41

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Підскажіть, будь ласка, из за чего ошибка?

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
    The constructor ExportHelper(Connection) is undefined

    at TecdocExport.main(TecdocExport.java:12)

http://домен агресора/YlPzU4wyTJBfCVrRLaU
http://домен агресора/nlPzU_3JTJByeUyxDwE

Також я не знайшов мєтода close() у классі ExportHelper

42

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Досить зручно працювати з базою TecDoc у PHPStorm та інших IDE від JETBrains.
Драйвер jdbc-transbase, що прикріплений у першому пості підключився без будь-яких проблем, після цього працювати з базою стало дуже зручно.

Однак я зтикнувся з такою проблемою - у Transbase немає синтаксису

ALTER TABLE table DROP column

Єдине рішення, яке я зараз бачу - це створювати свої таблиці на базі текдоку, в яких немає непотрібних полів.
Може, є ще якийсь метод?

43

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Там 4 рази на рік виходить нова версія, тому краще робити експорт в MySQL чи в будь-яку іншу СУБД з якою ви працювали. Іншого методу не бачу.

44

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Просто я хотів написати декілька скриптів, що "полегшать" таблиці перед тим, як експортувати їх до MySQL, бо сам по собі Текдок містить досить багато зайвої інформації, що мені не потрібна.

45

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

просто вказуйте конкретні поля, які вам потрібні при експорті за допомогою SELECT. Я взагалі окремі таблиці створив з трохи іншою структурою.

46

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Не знайшов ще одного - база зображень авто. Чи є вона у ТекДок, і якщо так, то де її шукати?

47

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

http://replace.org.ua/post/20458/#p20458 2-е питання.

48 Востаннє редагувалося dcom12 (27.09.2014 16:24:19)

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Привіт всім, коли я експортувати таблиці кириличні символи невірні. всі з них "????" . У чому проблема?
завдяки

Hello everybody , when i export tables cyrillic symbols are incorect . all of them is "????" . Where is the problem ?

Thanks

49

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

For mysql connection, try this code:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;


public class MysqlHelper {
    private static final String dbDriver = "com.mysql.jdbc.Driver";
    private static final String dbUrl = "jdbc:mysql://remote.mysql:3306/";
    private static final String dbDatabase = "dbDatabase";
    private static final String dbUser = "dbUser";
    private static final String dbPassword = "dbPassword";
    private static final String characterEncoding = "utf-8";
    private Connection connection = null;

    public MysqlHelper() {
        try {
            Class.forName(dbDriver);
            connection = DriverManager.getConnection(dbUrl + dbDatabase + "?characterEncoding=utf-8&useUnicode=true", dbUser, dbPassword);
            
            String sqlCharset = "SET NAMES utf8 COLLATE utf8_general_ci";
            Statement st = connection.createStatement();
            st.executeQuery(sqlCharset);
            st.executeQuery("SET CHARACTER SET utf8");
            
        } catch (SQLException e) {
            e.printStackTrace();
        } catch (ClassNotFoundException e) {
            e.printStackTrace();    
        }
        
    }
    
    public Connection getConnection() {
        return connection;
    }
}
Подякували: leofun011

50 Востаннє редагувалося dcom12 (27.09.2014 17:32:58)

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Yes thanks man

Thanks

51

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Добрий день!

Стикнувся в проблемою читання даних з колонки Description (TM_TEXT) таблиці TOF_TEXT_MODULE_TEXTS.
Як я розумію це представлення якогось тексту у бінарному ASCII формати.

Ви використовуєте ці дані? Що це за данні і як ви їх форматували у читабельній формат?

Дуже дякую!

Подякували: bunak1

52

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Підкажіть будьласка, яку базу даних використано на вашому сайті для пошуку оригінальних запчастин за моделями авто?

Подякували: bunak1

53

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Abyss403, оригіналів немає.

54

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

olromchik написав:

Стикнувся в проблемою читання даних з колонки Description (TM_TEXT) таблиці TOF_TEXT_MODULE_TEXTS.
Як я розумію це представлення якогось тексту у бінарному ASCII формати.

Якщо ви про поле tof_text_module_texts.tmt_text -  то там UTF-16LE

------------------------------------------------------------------------------------

Abyss403 написав:

Підкажіть будьласка, яку базу даних використано на вашому сайті для пошуку оригінальних запчастин за моделями авто?

Треба використовувати бази даних з каталогів оригінальних запчастин, наприклад - ETK, ЕТКА, EPC, ePER, Fast, Microcat. Якщо вам такі бази даних потрібно в MySQL - звертайтесь.

55

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Thank you for the post.
I found a little bug in method exportTableData

This  code  line
   while (result.next() && count != 2000) {
should be
   while (count != 2000 && result.next()) {

First you must check count and then get the next row.

Подякували: Replace, 0xDADA11C72

56

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Yes, thank you. I have already fixed it, but forget to update the post on the forum.

Подякували: 0xDADA11C71

57

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

If you want to export units this code will be useful

public static void exportUnits() {
        final String tableName = "TOF_CRITERIA";
        final String tableCountry = "TOF_DESIGNATIONS";
        final String tableDescriptions = "TOF_DES_TEXTS";
        final String mysqlTable = "tof_units";

        final String sqlDropTable = "DROP TABLE IF EXISTS " + mysqlTable;
        final String sqlCreateTable = " CREATE TABLE IF NOT EXISTS " + mysqlTable + " (" +
                "id int(11) PRIMARY KEY," +
                "text varchar(100)" +
                ") ENGINE=INNODB DEFAULT CHARSET=utf8";

        Statement st;
        Statement mysqlSt;
        try {

            System.out.println("Get units");
            st = connection.createStatement();
            String query = "SELECT DISTINCT CRI_UNIT_DES_ID, TEX_TEXT " +
                    " FROM "  + tableName + ", " + tableCountry + ", " + tableDescriptions +
                    " WHERE  DES_LNG_ID = " + langId + " AND DES_TEX_ID = TEX_ID AND CRI_UNIT_DES_ID = DES_ID";
            
            ResultSet result = st.executeQuery(query);

            ResultSetMetaData metaResult = result.getMetaData();
            int numberOfColumns = metaResult.getColumnCount();

            mysqlSt = mysqlConnection.createStatement();
            mysqlSt.executeUpdate(sqlDropTable);

            mysqlSt = mysqlConnection.createStatement();
            mysqlSt.executeUpdate(sqlCreateTable);

            exportTableData(result, numberOfColumns, mysqlTable);
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
Подякували: Replace1

58

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Підкажіть будь ласка, як запускати скрипти викладені на першій сторінці, а то я новичек в цій справі.

59

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

Також розбираюся з TecDoc, експорт/імпорт даних робив на C#, бо технологія ближче мені.

Невелике питання про зворотні зв'язки. Потрібно отримати ART_ID для рядка з прайсу (по колонках Номер, Виробник)

select a.ART_ID
from TecDoc.TOF_ART_LOOKUP al
    inner join TecDoc.TOF_ARTICLES a on a.ART_ID = al.ARL_ART_ID
    inner join TecDoc.TOF_SUPPLIERS s on s.SUP_ID = a.ART_SUP_ID
where al.ARL_SEARCH_NUMBER = 'Номер' and s.SUP_BRAND = 'Виробник' and al.ARL_KIND <> 3;

Чи правильний це запит? Чи є щось оптимальніше/точніше?
Дякую.

60

Re: Експорт з Tecdoc в Mysql (TecDoc Online)

strange_v, не зрозуміло для чого це al.ARL_KIND <> 3. Якщо вставляти, то можна вже просто al.ARL_KIND = 1. А так ніби все вірно.

Подякували: sergbbb1