Здравствуйте! У меня не типовая/самописная конфигурация 1С. В Creatio  создан не типовой специальный объект TiServiceDesk_Base, который содержит наряды TiWorkOrder подрядчиков Account.  Мне необходимо по запросу из 1С считать массив нарядов за месяц по конкретному подрядчику. Связываюсь по протоколу ODATA3. Коннектится все нормально, но когда делаю запрос, то код ошибки получаю 301. Видимо сам запрос некорректен.

Прошу помощи в виде примеров запроса через ODATA3 к таблицам Creation. В переписке видел, что есть ert-обработка на 1С с примером идентификации и запроса к базе. Можете мне ее выслать?

Сам SQL запрос выглядит так:

 

SELECT * FROM "TiWorkOrder"

LEFT JOIN "Account" ON "TiWorkOrder."TiContractorid"="Account"."Id"

WHERE "Account"."Cod" = 123456 AND "TiWorkOrder"."TiFactEndDate" > '2024-01-01' AND "TiWorkOrder"."TiFactEndDate" < '2024-02-01'

Нравится

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

Добрый день.



Вы можете найти примеры запросов Odata в документации:



https://documenter.getpostman.com/view/10204500/SztHX5Qb?version=latest

https://academy.creatio.com/docs/8.x/dev/development-on-creatio-platfor…

Cherednichenko Nikita,

Не лучше ли выложить в community готовый пример 1С аутентификации и запросов GET, POST, который будет полезен всем последующим программистам 1С ? Команда Creatio заинтересована в дальнейшем развитиии проекта и последующих интерегациях с 1С?

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

Добрый день!
Заявленная нами на TCF 2014 разработка близится к завершению. Предлагаю вам познакомиться с BPMonline 1С Коннектор

Главное меню

Назначение.
Интеграция между сущностями 1С и BPMonline.

Использование.
BPMonline 1С Коннектор предоставляет возможность выбрав в интерфейсе объекты 1С и объекты BPMOnline, установить соответствия колонок и атрибутов, значениями которых будут обмениваться системы.

Окно выбора колонок

В системе существует возможность настроить периодичность синхронизации данных. Поддерживаются 2 вида синхронизации:
• Ежедневная - в определенное время;
• Периодичная - через определенные промежутки времени (каждые полчаса, час и т.д.).

Окно настроек

Данные об объектах BPMOnline и 1С загружаются динамически, поэтому созданные объекты (BPMOnline), справочники или документы (1C) могут быть включены в интеграцию. Существует возможность интеграции по связанным объектам (Справочники в объекте BPM, Ссылки в 1С), если эти объекты так же включены в интеграцию.

Окно настройки

Реализация
Предварительно, по нажатию кнопки, в систему BPMOnline загружаются данные основных справочников 1С (НДС, Единицы измерения, Валюты, Курсы). При выборе объектов интеграции, в соответствующей таблице BPMOnline создаются колонки, необходимые для обеспечение точного соответствия записей систем (Код для Справочников 1С, Номер и Дата для документов 1С). Так же вместо колонки BPM или атрибута 1С может быть установлено значение по умолчанию.

Особенности.
BPMonline 1С Коннектор представляет собой набор карточек, бизнес-процессов BPMOnline и Web сервисов 1С, необходимых для обмена данными. Благодаря использованию Web сервисов, 1С Коннектор может быть применен независимо от варианта развёртывания BPMonline (On-demand или On-site) и используемой базы 1C (файловая или SQL). Но в случае On-demand, необходимо, чтобы Web сервисы были опубликованы в интернет.

ООО «Программные технологии»
Центр разработки и внедрения Террасофт Поволжье

Нравится

Поделиться

1 комментарий

Уточнение: речь идет о коннекторе для BPMonline 7.х.
Возможно позже можно будет сделать для 5.x если будет интерес

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

Добрый день. Столкнулся с со следующей проблемой при импорте строк банковской выписки из 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 чтобы мы зарегистрировали обращение, и запланировали данный сеанс.

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

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

Здравствуйте.
Получаю ошибку "Импорт метаданных завершен с ошибками", когда пытаюсь настроить интеграцию Terrasoft XRM 3.3.2.43 c 1C.Предприятие 8.0.

Подробности.
Интеграцию настраиваю на той же машине, где установлено 1С (серверная версия). Тестирование соединения проходит успешно. Соединение с базой 1С устанавливается, а вот загрузка метаданных, увы, не происходит.

В самом начале загрузки метаданных выскакивает MessageBox: "Импорт метаданных завершен с ошибками". В лог при этом пишется: "Ошибка импорта метаданных 1С: "TabularSections" - есть null или не является объектом"
Скриншот в аттаче.

Подскажите, пожалуйста, как же все-таки настроить интеграцию.

Нравится

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

подстраховал использования TabularSections обработчиками исключений и вроде как импорт метаданных прокатил

тем не менее, как и ожидалось, табличные части документов модуль интеграции не видит :(
Нид хеелп, плииз.

Попробуйте включить отладчик и посмотреть, в каком скрипте и на какой строке кода он остановится. Проверьте значение переменной TabularSections или (если это свойство) родительского объекта. Возможно, это даст дополнительную информацию по проблеме.

Ребята, для кого Вы создавали программу Террасофт? Такое ощущение, что сами для себя или программистов-мазохистов. Для нормального человек это немножко завысокая материя. Но если есть время поизвращаться самому над собой, то это как раз то, что надо. Даже пива не надо...

"Т. Гаврилец" написал:Ребята, для кого Вы создавали программу Террасофт? Такое ощущение, что сами для себя или программистов-мазохистов. Для нормального человек это немножко завысокая материя. Но если есть время поизвращаться самому над собой, то это как раз то, что надо. Даже пива не надо...

Конструктивная критика - хорошо, неконструктивная - бесполезно. Нашим клиентам, которым сложно разобраться, помогает служба поддержки. Если Вы обратитесь с конкретным вопросом, без ответа его не оставят.

Для решения данной проблемы следует обновить скрипт scr_Dataflow1CUtils_V81

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