Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Пример обработки для загрузки из XML у меня есть (контрагенты и номенклатура), могу выложить в общий доступ. Но их придется точить под конкретные конфы и не все поля грузятся. Я делал изначально для автономных учреждений. Но доделывать не стал, из-за геморойности парсинга. Если база в Парусе большая а машина слабая, то XML может формироваться больше суток (до кучи еще и повиснуть). Сейчас переношу все через EXCEL. Если интересно могу удаленно перенести. Переносил ВСЁ и бухгалтерию и зарплату. С Парусом работаю 16 лет (10 лет в региональном отделении). Сейчас с 1С.
Собственно вот обработка для загрузки справочников их XML Паруса. Если есть желание копаться в чужом коде. Писалось только для себя так что не судите строго. Писалось 3 года назад для загрузки в бухгалтерию автономных учреждений.
Прикрепленные файлы:
ИмпортИзПаруса.zip
Ну и до кучи еще. В Парусе есть конструктор запросов (правда раньше был немного кривой, приходится после конструирования править запрос). Результат запроса можно выгрузить хоть в XLS хоть в DBF (если много записей). Потом затягивай в 1с как удобно.
(14) А это смотря как они ведут учет. Но хоз.операции в любом случае потребуется вытягивать. Это файлы EOPBASE.DBF и EOPSPEC.DBF. Естетсвенно, план счетов и аналитику (ACCBASE.DBF и ACCSPEC.DBF соответственно).
Опционально нужны файлы CASH.DBF и CASHSPEC.DBF (это касса), BANK.DBF и BANKSPEC.DBF (банк) ну и другие документы.
Человеческое название таблиц содержится в файле TABLES.DBF
Не все таблицы получается открыть 1Ской, иногда ругается на формат. Так что делать либо через COM-объект ADODB, либо штатными средствами Паруса выгружать в Excel и тянуть оттуда.
Опционально нужны файлы CASH.DBF и CASHSPEC.DBF (это касса), BANK.DBF и BANKSPEC.DBF (банк) ну и другие документы.
Человеческое название таблиц содержится в файле TABLES.DBF
Не все таблицы получается открыть 1Ской, иногда ругается на формат. Так что делать либо через COM-объект ADODB, либо штатными средствами Паруса выгружать в Excel и тянуть оттуда.
В Парусе есть примитивный конструктор запросов. Можно в нем табличку сформировать, потом тянуть уже из нее. Но раньше периодически кривые запросы он делал. Приходилось слегка ручками править. Так же в Парусе в качестве кодов RN в таблицах используются четырех символьные значения. Как цифры так и латинские и русские буквы. Давно писал простую функцию конвертации Парусного RN в код 1с, прикладываю может пригодится (прошу к коду сильно не придираться) :D
Прикрепленные файлы:
РН в код.epf
выгрузил отчетами из паруса в ексель справочник контрагентов, номенклатуры, дебиторку/кредиторку по контрагентам, инвентаризационную карту по ОС. буду пробовать грузить в 1с. сегодня поеду за файлами таблиц.
то есть некоторые таблицы DBF открываются в 1с. а что дальше? как перенести?
А это как? в 1с прямо подключается или через внешнюю программу? а дальше что?
то есть некоторые таблицы DBF открываются в 1с. а что дальше? как перенести?
Так что делать либо через COM-объект ADODB,
А это как? в 1с прямо подключается или через внешнюю программу? а дальше что?
Типа так. Пишем ANK_RN. Запрос из живой базы. Тянет зарплату.
// Вставить содержимое обработчика.
Connection = Новый COMОбъект("ADODB.Connection");
попытка
Connection.Open("DRIVER = {WLite Loc Data}; Deleted = No; Null = Yes; Collate = RUSSIAN; Exclusive = No; SourceType = DBC; SourceDB = D:\data\parus.dbc");
исключение
Сообщить ("Проблемы с подключением" );
Возврат;
КонецПопытки;
RS = Новый COMОбъект("ADODB.Recordset");
попытка
RS.Open("SELECT ZANK_1.ANK_RN, ORGBASE_1.RMNEMO_ORG, ORGBASE_1.SHOWNAME, ZSNU_1.NUM, ZSNU_1.CODE, ZSNU_1.NICK, ZSNU_1.NAME, ZSNU_1.TYPE, ZHIS.YEAR, ZHIS.MONTH, ZHIS.YEARFOR, ZHIS.MONTHFOR, ZHIS.STORNO, ZHIS.SUM, ZHIS.LOCK FROM ZHIS left join ZANK as ZANK_1 on (ZHIS.ANK_RN = ZANK_1.ANK_RN) left join ORGBASE as ORGBASE_1 on (ZANK_1.ORGBASE_RN = ORGBASE_1.RN) left join ZSNU as ZSNU_1 on (ZHIS.SNU_RN = ZSNU_1.SNU_RN)", Connection );
исключение
Сообщить ("Проблемы с выполнением запроса ");
Возврат;
КонецПопытки;
Пока RS.EOF() = 0 Цикл
Имя = RS.Fields("ANK_RN").Value;
Сообщить(Имя);
// Обработка других полей
RS.MoveNext();
КонецЦикла;
RS.Close();
Connection.Close();
Показать
(19) HIgor, Добрый день! Мучаюсь и не могу подключитсья к dbc. На компе установил Парус 7. Как я понимаю, вот этот драйвер {WLite Loc Data} должен появиться в "Администратор источников данных ODBC" Его там нет. МОжет я не туда копаю. Подскажите где проверить, что он установлен или где вообще взять данный драйвер?
а через XML не проще? есть штатная выгрузка, есть к нему XSD
а то как-то долго и неэффективно получатся через ковыряние таблиц. Выяснить где что лежит, как связано...
зы. Что бы проще было понять парус - возьми у дилеров er-диаграмму.
а то как-то долго и неэффективно получатся через ковыряние таблиц. Выяснить где что лежит, как связано...
зы. Что бы проще было понять парус - возьми у дилеров er-диаграмму.
Откройте в нужный раздел. Дальше раньше меню Файл/Экспорт/XML если не активно - значит нельзя штатно (Основные нельзя было, сейчас не знаю). Ос только чз запросы вытягивал.
Выгрузка может идти оооочень долго до 2-3 суток на больших базах. При этом непонятно висит Парус или работает.
Выгрузка может идти оооочень долго до 2-3 суток на больших базах. При этом непонятно висит Парус или работает.
В раздел входит.
Теперь не могу с Вашей обработки перенести в 1С.
Прикрепленные файлы
ИмпортИзПаруса.zip (10.72 КБ) [ Скачать ]. У меня Конфигурация Бух-ию Бюдж. учреждения 8.2
что то надо переделывать в самой обработке?
Теперь не могу с Вашей обработки перенести в 1С.
Прикрепленные файлы
ИмпортИзПаруса.zip (10.72 КБ) [ Скачать ]. У меня Конфигурация Бух-ию Бюдж. учреждения 8.2
что то надо переделывать в самой обработке?
Обработка на 2-ой странице формы заполнила:
№ ; id каталога; наименование. А дальше ничего не происходит.
По кнопке "Грузим физиков", "Грузим КГ" пишет поле объекта "физ лица"
не обнаружено. А номенклатуру на 2-ю страницу заполняте: № ; id каталога; наименование.
Я обработку переконвертировал на 8.2
№ ; id каталога; наименование. А дальше ничего не происходит.
По кнопке "Грузим физиков", "Грузим КГ" пишет поле объекта "физ лица"
не обнаружено. А номенклатуру на 2-ю страницу заполняте: № ; id каталога; наименование.
Я обработку переконвертировал на 8.2
Номенклатура не доделана. Только контрагенты и физики. У физиков видимо поля не под вашу конфу, хотя правится все быстро. Посмотрите код. Заполняется только справочник, все связанные регистры надо дозаполнять (как то ФИО (регистр сведений), адреса и тп). Сейчас если гружу то из Экселя или DBF (если таблицы большие) - проще обрабатывать когда таблица плоская.
(35) HIgor, Я тоже так подумал, что это драйвер Visual Foxpro, но что-то не клеится. Я создавал Пользовательский DSN со след. пар-ми DSN = parus , DataBase type = Visual FoxPro database, Путь к базе я так понимаю не надо.
Тогда строка должна быть такой?
Connection.Open("DRIVER = parus; Deleted = No; Null = Yes; Collate = RUSSIAN; Exclusive = No; SourceType = DBC; SourceDB = D:\data\parus.dbc; user id=1; password=1");
Тогда строка должна быть такой?
Connection.Open("DRIVER = parus; Deleted = No; Null = Yes; Collate = RUSSIAN; Exclusive = No; SourceType = DBC; SourceDB = D:\data\parus.dbc; user id=1; password=1");
В чем там сложность? Для 7ки парусовой вполне подходит ODBC и там уже select. Поля названы понятно, xто не понятно - выясняется через refox. Да и по обратиться к спецам из Паруса в твоем городе - не лишнее. Чаще всего - адекватные люди, без однэсных заскоков.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот