Добрый день. Столкнулся с со следующей проблемой при импорте строк банковской выписки из 1С в Terrasoft CRM:

В функции OnBeforeRecordImport хочу проверить некоторые данные на основание которых принимается решение делать импорт строки или нет. Однако не все данные удается получить:

Например эти данные определяются:

Select1C.Содержание
"Оплата за оренду  згідно дог. № 221-10/Ар від 05. 02.2008 р.  у т.ч. ПДВ - 1166.67 грн."
Select1C.Заказ.Контрагент.Наименование
"Простір-Інформ"
Select1C.СуммаПлатежа
7900
Select1C.НомерСтроки
1
Select1C.НомерСтрокиДокумента
1

А вот эти нет, хотя они в документе 1С есть:

Select1C.НДС
undefined
Select1C.ПриходРасход
undefined
Select1C.ДокументЗаказ
undefined
Select1C.СуммаСНДС
undefined
Select1C.Счет
undefined
Select1C.ВидПриходаРасхода
undefined

Подскажите в чем может быть дело?

Нравится

10 комментариев

Здравствуйте.

Сталкивался с таким однажды. Попробуйте добавить эти поля в настройках соответствия, при чем соответствия со стороны Террасофта не назначайте - проблема должны исчезнуть.

Спасибо, уже сам разобрался, проблема была именно в этом.
Однако возникла другая проблема:
Мне нужно определить номер документа (договора или счета-фактуры) который привязан к данной строке банковской выписки в поле Заказ. Однако когда я пытаюсь получить его то поле Select1C.Заказ.Номер или Select1C.Заказ.Дата (дата документа) не определено:

Select1C.Заказ.Дата
undefined
undefined
undefined
Select1C.Заказ.Номер
undefined
undefined
undefined

в то же время например имя контрагента из документа я получить могу:

Select1C.Заказ.Контрагент.Наименование
"Українська дистрибуційна компанія"
"Партия Регионов"
"Кока-Кола Бевеpiджиз Укpаїна Лімітед"

А в родительской интеграции эти поля вытянуты?

Определяется ли Select1C.Заказ.Ссылка либо Select1C.Заказ.Наименование?

В родительской интеграции этих полей нет. Это атрибуты табличной части.
Давайте я вам несколько скриншотов выложу чтоб понятней было...

Проверьте свойства реквизитов "Заказ"а.

Также попробуйте найти документ заказа, а потом обратится к его реквизитам:

НайтиДокумент(ТекущийДок.СсылкаНаДокОсн)

Из всех реквизитов "Заказ"а доступен почемуто только "Контрагент":

Select1C.Заказ.Контрагент
{...}
Select1C.Заказ.Документ
undefined
Select1C.Заказ.Номер
undefined
Select1C.Заказ.Дата
undefined
Select1C.Заказ.Сумма
undefined

По поводу найти документ: Дмитрий я не совсем понял как это сделать... Нужно сначала создать какой-то объект 1С для поиска?

Попробуйте так:

var Number = null;
var Zakaz = Param.Obj1C.Документы.Заказ;
var ZakazViborka = Zakaz.Выбрать(null, Select1C.QueryLink.Ссылка);
//или
//var ZakazViborka = Zakaz.Выбрать(null, Select1C.Ссылка);
while(ZakazViborka.Следующий())
{
     Number = ZakazViborka.Номер;
}

Ошибки выдает. Если смотреть в дебагере:

Select1C.QueryLink
undefined
Select1C.Ссылка
undefined
Param.Object1C.Документы
undefined
Param.Object1C.Заказ
""

Валентин, даже не знаю, наверное потребуется удаленное подключение к Вашему рабочему месту.

Предлагаю Вам написать о проблеме на support@terrasoft.ru чтобы мы зарегистрировали обращение, и запланировали данный сеанс.

Дмитрий, спасибо уже разобрался. Оказывается нужно внимательней изучать имена реквизитов документа :-)

Показать все комментарии

Пытаюсь синхронизировать 1С и BPM
Использую вот такой код:

Type v7Type = Type.GetTypeFromProgID("V77.Application", true);
            dynamic v7 = Activator.CreateInstance(v7Type);
         
            object[] arg = new object[3];
            arg[0] = v7Type.InvokeMember("RmTrade", BindingFlags.Public | BindingFlags.InvokeMethod | BindingFlags.Static, null, v7, null);
            arg[1] = "/d\\\\ITL.LOCAL\\files\\1Cbases\\itl-db-test\\" + " /nАдминистратор";
            arg[2] = "NO_SPLASH_SHOW";
            v7Type.InvokeMember("Initialize", BindingFlags.GetProperty, null, v7, arg);

            arg = new object[1];
            arg[0] = @"Справочник.ПТО";
            object sprNomen = v7Type.InvokeMember("CreateObject", BindingFlags.GetProperty, null, v7, arg);
и т.д.

В visual studio код работает на ура, а в bpm ошибки

Вроде подключил все библиотеки, которые подключены в visual studio.

Нравится

3 комментария

"Сазанов Александр Владимирович" написал:Вроде подключил все библиотеки, которые подключены в visual studio.

Александр, для того, чтобы подключить в конфигурацию сторонние библиотеки, нужно http://www.community.terrasoft.ru/developer/article/6591

У Вас нет доступа к этой странице.

Александр, инструкция во вложении.

Показать все комментарии