Обмен справочниками с учетными системами

Відповісти
Родин Евгений

Обмен справочниками с учетными системами

Повідомлення Родин Евгений » 11 червня 2013, 15:14

Созданы новые методы для обмена справочниками с учетными системами (например, 1С). Находятся в стадии тестирования. Если все будет ОК, включим в ближайшее системное обновление (после 20х), о чем более подробно будет написано в инструкции по СОМобъектам.

Родин Евгений

Re: Обмен справочниками с учетными системами

Повідомлення Родин Евгений » 18 червня 2013, 19:41

Протестировал - работают. Включим в ближайшее системное обновление и описание Инструкции по СОМ объектам:
| Показать
Добавили методы открытия (Open), сохранения(Save) изменения по справочникам. Так как в системе присутствуют справочники только для чтения метод проверки ( IsReadOnly )
Пример:
Dict = App.GetDictionary();
tabl = Dict.Open("HBPARTNER"); //получить справочник контрагентов
tabl.First();

Пока НЕ tabl.EOF Цикл
Сообщить(tabl.Fields.Item("NUM").Value); //вывести поле NUM
Сообщить(tabl.Fields.Item("NAME").Value);//вывести поле NAME
ЕСЛИ tabl.Fields.Item("NUM").Value = "0" ТОГДА
tabl.Remove(); //Удалить значение справочника в базе!
tabl.Next();
продолжить;
КонецЕсли;

tabl.Edit();
tabl.Fields.Item("NAME").Value = tabl.Fields.Item("NAME").Value + "!"; //изменяем поле справочника в базе
tabl.Post();
tabl.Next();
КонецЦикла;

Если НЕ isReadOnly Тогда
Dict.Save();
КонецЕсли;
Собственно, разработано по массовым предложениям сделать переброс справочников Контрагентов, Номенклатуры, Сотрудников.
Впрочем, пытливый мозг разработчика может найти и другое применение этим методам.

Родин Евгений

Re: Обмен справочниками с учетными системами

Повідомлення Родин Евгений » 08 липня 2013, 14:10

Разыскивается автор обработки "вигрузка_працівників_з_1с_Бухгалтерія_77_в_МЕДОК.ert"
Просьба автора связаться со мной, для обсуждения деталей. Если кто-то знает его, просьба дать контакт (или сказать автору об этом).
Обработка есть, а автор неизвестен.... На форуме найти не удалось, Гугл также не дал результатов.

Родин Евгений

Re: Обмен справочниками с учетными системами

Повідомлення Родин Евгений » 09 липня 2013, 10:28

Автор нашелся. Спасибо.

putilin
Повідомлень: 53
З нами з: 31 липня 2013, 21:58

Re: Обмен справочниками с учетными системами

Повідомлення putilin » 10 вересня 2013, 15:24

Как же насчет методов работы со справочниками с помощью COM объектов?

Родин Евгений

Re: Обмен справочниками с учетными системами

Повідомлення Родин Евгений » 10 вересня 2013, 15:46

Вышли в предыдущем системном обновлении (более месяца назад), посмотрите описание 5ой версии.
Также доработаны в системном обновлении 174, которое выйдет в самое ближайшее время (6я версия).

ivanius
Повідомлень: 401
З нами з: 04 березня 2013, 16:28

Re: Обмен справочниками с учетными системами

Повідомлення ivanius » 10 вересня 2013, 16:32

а где это все посмотреть можно7
П.С. имеется ввиду сама стыковка
Юг-Интеллект-Сервис - лучший дистрибьютор и поддержка ПО M.E.Doc в Одессе и Области.

Родин Евгений

Re: Обмен справочниками с учетными системами

Повідомлення Родин Евгений » 10 вересня 2013, 16:33

По справочникам? Нет такой....

XmFazer
Повідомлень: 2
З нами з: 21 січня 2013, 14:04

Re: Обмен справочниками с учетными системами

Повідомлення XmFazer » 10 лютого 2014, 14:33

Помогите разобраться с загрузкой справочников в МЕДОК
Информация загружаются, записи добавляются, справочник НЕ СОХРАНЯЕТСЯ!

Код 1С 7.7
----------------------
App=СоздатьОбъект("MEDOC.ZApplication");
Dict = App.GetDictionary();
rsTabl = Dict.Open("PHYSPERSONS");

RecCount = rsTabl.RecordCount();
Сообщить("Всего объектов = "+RecCount); ///получаем например 1

rsTabl.Append();
rsTabl.FldVal("Name","Бибигон Степан Иванович");
rsTabl.FldVal("Num","1234567890");
rsTabl.FldVal("NumTel","0503555555");
rsTabl.FldVal("Addr","вул. Героев, 15");
......
.......
rsTabl.Post();

RecCount = rsTabl.RecordCount();
Сообщить("Всего объектов = "+RecCount); ///получаем уже 2

Dict.Save(); //хочу сохранить ?!
----------------------

в результате
{D:\1CBASES\ЕСПОРТСОТР2МЕДОК.ERT(224)}: Неизвестная ошибка

pavel
Повідомлень: 1017
З нами з: 01 липня 2011, 09:29
Контактна інформація:

Re: Обмен справочниками с учетными системами

Повідомлення pavel » 10 лютого 2014, 21:47

стоит глянуть \Medoc\help\manuals\Инструкция по СОМ объектам.pdf ;)

Код: Виділити все

1) Некоторые справочники ведутся в разрезе организаций 
(контрагенты, сотрудники, номенклатура, ответственные лица). При 
работе с такими справочниками рекомендуется добавить условие 
проверки по полю IDORG, значение которого можно получить 
функцией App.SeekOrg("едрпоу", "филиал" )

Inkognito
Повідомлень: 1067
З нами з: 14 січня 2012, 14:26

Re: Обмен справочниками с учетными системами

Повідомлення Inkognito » 12 лютого 2014, 19:47

По памяти:

App=СоздатьОбъект("MEDOC.ZApplication");
MyID=App.SeekOrg("МойЕдрпоу");
...
rsTabl.Append();
rsTabl.FldVal("IdOrg", MyID);
rsTabl.FldVal("Name","Бибигон Степан Иванович");
rsTabl.FldVal("Num","1234567890");
rsTabl.FldVal("NumTel","0503555555");
rsTabl.FldVal("Addr","вул. Героев, 15");
П.С. если запись не сохраняется, значит не заполнено обязательное поле, приводящее к ексепшену (ошибке).
Обычно таким полем является ключ таблицы (поле CODE). Для сложных справочников, которые ведутся в разрезе предприятий (см.список выше), вторым обязательным полем является IDORG. Для "Контрагентов" и "Номенклатуры" третьим обязательным полем является код группы (внешний ключ: CODE и IDPARTNERGRP соответственно). Рекомендуется посмотреть содержимое базы с помощью IBExpert, - многое станет понятней.

Відповісти

Повернутись до “1C”