Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Интеграция 1С с iFOBS Document Integration Tool

Интеграция 1С с iFOBS Document Integration Tool
Я
   rene_den
 
27.09.16 - 16:52
День добрый коллеги,
Столкнулся с проблемой. Нужно программно из 1С8 создать доки в клиентбанке. Есть DLL и описание к ней. С помощью нее через com соединение подключаемся и работаем с клиентбанком.
Из того что получилось:
ОбъектiFOBSDocIntegrator = Новый COMОбъект("iFOBSDocIntegrator.DocOperation");
        Результат = ОбъектiFOBSDocIntegrator.Login("***","***","***","D:\***_key\***_Cert\");

А теперь нужно выполнить функцию InsertDocs
function InsertDocs(const ADocList: WideString): WideString; safecall;
Пример XML-строки, передаваемой в качестве параметра функции InsertDocs:
<?xml version="1.0" encoding="windows-1251"?>
<ROWDATA>
    <ROW ROWNUM="1" DOCUMENTDATE="20051101" DOCUMENTNO="58" AMOUNT="10025" OURBANKID="351715" ACCOUNTNO="2600201071" CORRBANKID="351715" CORRACCOUNTNO="10018010911001" CORRIDENTIFYCODE="14350784" CORRCOUNTRYID="804" CORRSNAME="Наименование корресп." DETAILSOFPAYMENT="Назн. плат. в т.ч. НДС" PRIORITY="50 CURRENCYID="980">sign</ROW>
    <ROW ROWNUM="2" DOCUMENTDATE="20051102" DOCUMENTNO="59" AMOUNT="157600" OURBANKID="351715" ACCOUNTNO="2600201071" CORRBANKID="320724" CORRACCOUNTNO="26000052" CORRIDENTIFYCODE="14350784" CORRCOUNTRYID="804" CORRSNAME="Наименование корресп.2" DETAILSOFPAYMENT="Назначение платежа" PRIORITY="50" SRVID="18111" USER1="BUH1" USER2="BUH2" CURRENCYID="980">insert</ROW>
    <ROW ROWNUM="3" DOCUMENTDATE="20051101" DOCUMENTNO="60" AMOUNT="12500" OURBANKID="351715" ACCOUNTNO="2600203071" CORRBANKID="320724" CORRACCOUNTNO="26000051" CORRIDENTIFYCODE="9999" CORRCOUNTRYID="804" CORRSNAME="Наименование корресп.3" DETAILSOFPAYMENT="Назначение платежа" PRIORITY="50" SRVID="18113" USER1="BUH1" USER2="BUH2 CURRENCYID="980">sign</ROW>
</ROWDATA>

Только никак не могу даже представить как это сделать из 1С8.
 
 
   rene_den
 
1 - 27.09.16 - 16:54
Функция InsertDocs, InsertFxDocs используется добавления новых документов. В качестве параметра в функцию передается список документов ADocList  (в формате XML), которые необходимо добавить. Внутри тэга <ROW .../> каждого документа должен быть указан текст с требуемой операцией: «sign» — подписания первой и второй подписью документа,  «sign1» — для подписания первой подписью документа,  «sign2» — для подписания второй подписью документа или «insert» для вставки документа без подписания (см. пример формата XML ниже).  В системе iFOBS осуществляется вставка документа осуществляется по уникальному идентификатору SRVID (значения остальных полей игнорируются). В качестве результата функции возвращается тот же список ADocList, с сообщениями о наложенных подписях или с текстом ошибки для каждого документа.    

Список документов находится в корневом тэге XML <ROWDATA>. Внутри него заключены тэги <ROW .../> с документами. Каждому документу соответствует строго один тэг <ROW .../>. Информация о реквизитах документа задается атрибутами этого тэга. Каждый документ может быть уникально идентифицирован в рамках системы по значению атрибута SRVID. Соответствие атрибутов реквизитам документа задано в таблице:приведена таблица с перечнем реквизитов(номер дока, дата дока и т.п.)
   Кирпич
 
2 - 27.09.16 - 17:05
(0) ну так и пиши ОбъектiFOBSDocIntegrator.InsertDocs(ТекстДокументов)
   Кирпич
 
3 - 27.09.16 - 17:06
аааа. подписывать надо...
   rene_den
 
4 - 27.09.16 - 17:50
(3) ???
   HardBall
 
5 - 27.09.16 - 18:08
(0) Чем тебе не нравится (2) .
Что конкретно не получается?
   rene_den
 
6 - 27.09.16 - 18:14
В качестве параметра в функцию передается список документов ADocList  (в формате XML), которые необходимо добавить. Внутри тэга <ROW .../> каждого документа должен (из (1))
   rene_den
 
7 - 27.09.16 - 18:17
(5) Или вы имеете в виду забить на (6) и просто тестом вот так и передавать: <ROWDATA>
    <ROW ROWNUM="1" DOCUMENTDATE="20051101" DOCUMENTNO="58" AMOUNT="10025" OURBANKID="351715" ACCOUNTNO="2600201071" CORRBANKID="351715" CORRACCOUNTNO="10018010911001" CORRIDENTIFYCODE="14350784" CORRCOUNTRYID="804" CORRSNAME="Наименование корресп." DETAILSOFPAYMENT="Назн. плат. в т.ч. НДС" PRIORITY="50 CURRENCYID="980">sign</ROW>
    <ROW ROWNUM="2" DOCUMENTDATE="20051102" DOCUMENTNO="59" AMOUNT="157600" OURBANKID="351715" ACCOUNTNO="2600201071" CORRBANKID="320724" CORRACCOUNTNO="26000052" CORRIDENTIFYCODE="14350784" CORRCOUNTRYID="804" CORRSNAME="Наименование корресп.2" DETAILSOFPAYMENT="Назначение платежа" PRIORITY="50" SRVID="18111" USER1="BUH1" USER2="BUH2" CURRENCYID="980">insert</ROW>
    <ROW ROWNUM="3" DOCUMENTDATE="20051101" DOCUMENTNO="60" AMOUNT="12500" OURBANKID="351715" ACCOUNTNO="2600203071" CORRBANKID="320724" CORRACCOUNTNO="26000051" CORRIDENTIFYCODE="9999" CORRCOUNTRYID="804" CORRSNAME="Наименование корресп.3" DETAILSOFPAYMENT="Назначение платежа" PRIORITY="50" SRVID="18113" USER1="BUH1" USER2="BUH2 CURRENCYID="980">sign</ROW>
</ROWDATA>
   rene_den
 
8 - 28.09.16 - 15:34
Попробовал так:
        ВремТекст = "<?xml version=""1.0"" encoding=""windows-1251""?><ROWDATA><ROW ROWNUM=""1"" DOCUMENTDATE=""20051101"" DOCUMENTNO=""58"" AMOUNT=""10025"" OURBANKID=""351715"" ACCOUNTNO=""2600201071"" CORRBANKID=""351715"" CORRACCOUNTNO=""10018010911001"" CORRIDENTIFYCODE=""14350784"" CORRCOUNTRYID=""804"" CORRSNAME=""Наименование корресп."" DETAILSOFPAYMENT=""Назн. плат. в т.ч. НДС"" PRIORITY=""50 CURRENCYID=""980"">sign</ROW></ROWDATA>";
        РезInsertDocs = ОбъектiFOBSDocIntegrator.InsertDocs(ВремТекст);

Вообще 1С вылетает с ошибкой.
   Кирпич
 
9 - 28.09.16 - 16:16
PRIORITY=""50

PRIORITY=""50""
   rene_den
 
10 - 29.09.16 - 17:07
(9) тот же результат (((
 
 Рекламное место пустует
   rene_den
 
11 - 29.09.16 - 17:09
Я думаю проблема тут :"в качестве параметра в функцию передается список документов ADocList  (в формате XML), которые необходимо добавить."
вопрос как создать  "список документов ADocList  (в формате XML)"   в 1С?
   Кирпич
 
12 - 29.09.16 - 17:20
где взять эту iFOBS Document Integration Tool?
   rene_den
 
13 - 29.09.16 - 17:45
Могу кинуть на мыло. Но у тебя нет логина и пароля чтоб залогинится. Или ты ее раздебажить хочешь попробовать?
   Кирпич
 
14 - 29.09.16 - 17:52
(13) "у тебя нет логина и пароля чтоб залогинится" 
ну тогда не надо

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует