Текущее время: Пт, апр 19 2024, 22:57

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: Незаполнение Плательщик при конвертации в Multicash
СообщениеДобавлено: Ср, июн 22 2016, 18:05 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Чт, май 12 2011, 08:55
Сообщения: 82
Подскажите пожалуйста, при конвертации 1С файла в Multicash не переносится Плательщик, причём версия формата 1.0 отражается корректно, а в версии формата 1.02 Плательщик пустой. Вид 1с такой

1CClientBankExchange
ВерсияФормата=1.00
Кодировка=Windows
ДатаНачала=15.01.2016
ДатаКонца=15.01.2016
РасчСчет=40000000000000000000
СекцияРасчСчет
ДатаНачала=15.01.2016
ДатаКонца=15.01.2016
РасчСчет=40000000000000000000
НачальныйОстаток=154863.95
ВсегоПоступило=8749287.58
ВсегоСписано=8699151.53
КонечныйОстаток=205000.00
КонецРасчСчет
СекцияДокумент=Платежное поручение
Номер=54492
Дата=15.01.2016
Сумма=8699151.53
ПлательщикСчет=40000000000000000000
ДатаСписано=15.01.2016
ПлательщикИНН=7701000000
Плательщик1= ООО "Лео"
ПлательщикБИК=044525727
ПлательщикКорсчет=30101810745250000727
ПлательщикБанк1= ФИЛИАЛ ПЕТРОКОММЕРЦ ПАО БАНКА "ФК ОТКРЫТИЕ"
ПлательщикБанк2=Г МОСКВА
ПлательщикРасчСчет=40000000000000000000
ПолучательСчет=40000000000000000000
ПолучательИНН=770000000
Получатель1= ООО "Лео"
ПолучательБИК=044525727
ПолучательКорсчет=30101810745250000727
ПолучательБанк1= ФИЛИАЛ ПЕТРОКОММЕРЦ ПАО БАНКА "ФК ОТКРЫТИЕ"
ПолучательБанк2=Г МОСКВА
ПолучательРасчСчет=40000000000000000000
ВидПлатежа=
ВидОплаты=01
СрокПлатежа=00.00.0000
Очередность=5
НазначениеПлатежа=Перечисление согласно Дополнительного соглашения №1 от 14.02.2013г. НДС не облагается.
Код=
КонецДокумента

а вот а версии 1.02 все формируется корректно, а вот Плательщик в usmatz.txt пустой

1CClientBankExchange
ВерсияФормата=1.02
Кодировка=Windows
Отправитель=
Получатель=
ДатаСоздания=20.06.2016
ВремяСоздания=15:20:42
ДатаНачала=17.06.2016
ДатаКонца=17.06.2016
РасчСчет=40000000000000000000
СекцияРасчСчет
ДатаНачала=17.06.2016
ДатаКонца=17.06.2016
НачальныйОстаток=6313293.85
РасчСчет=40000000000000000000
ВсегоСписано=219306.04
ВсегоПоступило=0
КонечныйОстаток=6093987.81
КонецРасчСчет
СекцияДокумент=Банковский ордер
Номер=475249
Дата=17.06.2016
Сумма=8
ПлательщикСчет=40000000000000000000
ДатаСписано=17.06.2016
Плательщик=ООО "Лео"
ПлательщикИНН=7701000000
ПлательщикКПП=997100000
ПлательщикРасчСчет=40000000000000000000
ПлательщикБанк1=ПАО СБЕРБАНК
ПлательщикБИК=044525225
ПлательщикКорсчет=30101810400000000225
ПолучательСчет=40000000000000000000
ДатаПоступило=
Получатель=ПАО СБЕРБАНК
ПолучательИНН=770000000
ПолучательКПП=775000000
ПолучательРасчСчет=40000000000000000000
ПолучательБанк1=ПАО СБЕРБАНК
ПолучательБИК=044525225
ПолучательКорсчет=30101810400000000225
ВидПлатежа=0
ВидОплаты=17
Код=
СтатусСоставителя=
ПоказательКБК=
ОКАТО=
ПоказательОснования=
ПоказательПериода=
ПоказательНомера=
ПоказательДаты=
ПоказательТипа=
Очередность=5
НазначениеПлатежа= Комиссия за перечисление средств со счета ЮЛ и ИП на счет ФЛ КонецДокумента

Предполагаю, что дело не в DMEE, т.к. в нём стоит условие по Плательщику:

DMEE_MCSH_UMSATZ KTONR 2 <> DMEE_MCSH_UMSATZ VWZ14 2 или всё таки в Условии проблема. пробовал и с условием и без условия не заполняется. Подскажите в чем может быть причина, на что стоит обратить внимание? Спасибо


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Незаполнение Плательщик при конвертации в Multicash
СообщениеДобавлено: Ср, июн 22 2016, 23:06 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, фев 21 2007, 08:50
Сообщения: 1571
Откуда: Пермь
Пол: Мужской
Dmitry80 написал(а):
а в версии формата 1.02 Плательщик пустой.
Dmitry80 написал(а):
а вот а версии 1.02 все формируется корректно, а вот Плательщик в usmatz.txt пустой

Брррррррр :?
Где корректно, а где пустой?
В любом случае вопрос, как делаете конвертацию?
Используете для обработки BADI? Есть бадишка, точно имя не скажу, по маске ищите *dme*convert*.
В ней метод самый первый. Там может стоять считывание файла в формате 1С и формирование сегментов с разделителем.
А мультикэшевое дерево уже читает полученные результаты и мэппит в мультикэшевые таблицы.
Судя по тому, что в одной версии 1С формата стоит Плательщик, а в другой - Плательщик1, то могу предположить, что в обработке кушается только одно значение. Так как система новое имя поля не находит, то в строку сегмента записала пустоту, обособленную двумя разделителями.
Конвертор кушает пустоту и выводит то, что скушал.
Если гипотеза верна, то учите систему читать изменившееся имя поля.

_________________
Алё, это Пакистан? Нам нужен один килограмм


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Незаполнение Плательщик при конвертации в Multicash
СообщениеДобавлено: Чт, июн 23 2016, 13:07 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Чт, май 12 2011, 08:55
Сообщения: 82
Наверное вот это IF_EX_BADI_DMEECONVERT. Смотрю в событие PROCESS_INPUT_DME, в CH_IT_INIT-CONTENT данные о Плательщике присутствую корректные

1CClientBankExchange
ВерсияФормата=1.02
Кодировка=Windows
Отправитель=
Получатель=
ДатаСоздания=20.06.2016
ВремяСоздания=15:20:42
ДатаНачала=17.06.2016
ДатаКонца=17.06.2016
РасчСчет=40702000000000000000
СекцияРасчСчет
ДатаНачала=17.06.2016
ДатаКонца=17.06.2016
НачальныйОстаток=6313293.85
РасчСчет=40702000000000000000
ВсегоСписано=219306.04
ВсегоПоступило=0
КонечныйОстаток=6093987.81
КонецРасчСчет
СекцияДокумент=Банковский ордер
Номер=475249
Дата=17.06.2016
Сумма=8
ПлательщикСчет=40702000000000000000
ДатаСписано=17.06.2016
Плательщик=ООО "Лео"
ПлательщикИНН=7701000000
ПлательщикКПП=997100000
ПлательщикРасчСчет=40702000000000000000
ПлательщикБанк1=ПАО СБЕРБАНК
ПлательщикБИК=044525225
ПлательщикКорсчет=30101810400000000225
ПолучательСчет=40702000000000000000
ДатаПоступило=
Получатель=ПАО СБЕРБАНК
ПолучательИНН=7701000000
ПолучательКПП=775000000
ПолучательРасчСчет=40702000000000000000
ПолучательБанк1=ПАО СБЕРБАНК
ПолучательБИК=044525225
ПолучательКорсчет=30101810400000000225
ВидПлатежа=0
ВидОплаты=17
Код=
СтатусСоставителя=
ПоказательКБК=
ОКАТО=
ПоказательОснования=
ПоказательПериода=
ПоказательНомера=
ПоказательДаты=
ПоказательТипа=
Очередность=5
НазначениеПлатежа= Комиссия за перечисление средств со счета ЮЛ и ИП на счет ФЛ . Без НДС
КонецДокумента


, далее смотрю событие PROCESS_OUTPUT_DME точнее WA_CH_RESULT_1 данных о Плательщики нет в AUFG1/AUFG2. А вот как диагностировать причину не доходит

BANKY 044525225
KTONR 702000000000000000
AZNUM
VALUT 17.06.16
PRIMA
VWZ01 Банковский ордер
BUTXT
UZEIT
TSCHL
SCHNR
WRBTR 8
SAMPO
FOLGS
BUDAT
ZINF1 775000000
ZINF2 7701000000
VWZ02 475249
VWZ03 Комиссия за перечисление с
VWZ04 редств со счета ЮЛ и ИП на
VWZ05 счет ФЛ
VWZ06
VWZ07
VWZ08
VWZ09
VWZ10
VWZ11
VWZ12
VWZ13
VWZ14 702000000000000000
AUFG1
AUFG2

AGBNK 044525225
AGKTO 702000000000000000
GCODE -03
STORN
FWAER

Подскажите как можно выйти на причину?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Незаполнение Плательщик при конвертации в Multicash
СообщениеДобавлено: Чт, июн 23 2016, 16:47 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, фев 21 2007, 08:50
Сообщения: 1571
Откуда: Пермь
Пол: Мужской
Во-первых, на вопрос о наличии пользовательской обработки в PROCESS_INPUT_DME Вы так и не ответили.
Она там есть? Сделайте Ctrl+F по слову "плательщик". Если что-нибудь подобное найдется, значит, там и проблема.

_________________
Алё, это Пакистан? Нам нужен один килограмм


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Незаполнение Плательщик при конвертации в Multicash
СообщениеДобавлено: Чт, июн 23 2016, 17:07 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Чт, май 12 2011, 08:55
Сообщения: 82
Прошу прощения проверки нет.

METHOD if_ex_badi_dmeeconvert~process_input_dme.

DATA : wa_parametrs TYPE rsparams.
DATA : wa_select_fields TYPE rsparams.
DATA : l_filename TYPE string.
DATA : l_separ(1).

DATA : BEGIN OF m_ch
, lenght TYPE i
, content TYPE string
* , content(10000) TYPE c
, END OF m_ch.
DATA : BEGIN OF wa_fields
, field_nm(50) TYPE c
, field_ct TYPE string
* , field_ct(10000) TYPE c
, END OF wa_fields.

DATA : wa_m_ch LIKE m_ch.
DATA : it_m_ch LIKE TABLE OF m_ch.

DATA l_len TYPE i.


*1. Определяем имя форматного дерева
READ TABLE im_it_selection_fields INTO wa_parametrs
WITH KEY selname = 'P_TR_ID' .
READ TABLE im_it_selection_fields INTO wa_select_fields INDEX 1.

l_filename = wa_select_fields-low.
*2. Подключаем обработку входящего файла для каждого форматного дерева

CASE wa_parametrs-low.
* ====================================================================
* Для формата 1С (1.1) банков: ПКБ.
* ====================================================================
WHEN 'Z_MCSH_LCNP_PKB' OR 'Z_MCSH_LCNP_CB' OR 'Z_MCSH_LCNP_VZ'.
l_separ = '='.
LOOP AT ch_it_init INTO wa_m_ch.
* IF wa_m_ch-content(1) <> ''.
* Разбираем каждую строку и переводим идентификатор(текст до знака '=') в верхний регистр. Иначе форматное дерево не поймет идентификатор
SPLIT wa_m_ch-content AT l_separ INTO wa_fields-field_nm wa_fields-field_ct.
TRANSLATE wa_fields-field_nm TO UPPER CASE.
* Проверяем каждое поле. Если поле содержит дату в вормате ДД.ММ.ГГГГ, если дата в таком формате, то переводим ее в формат ДД.ММ.ГГ
* поскольку встроенные функции преобразования для типа дерва MCSH пока не работают :(
l_len = strlen( wa_fields-field_ct ).
IF l_len >= 10.
IF wa_fields-field_ct+2(1) = '.' AND wa_fields-field_ct+5(3) = '.20'.
CONCATENATE wa_fields-field_ct(6) wa_fields-field_ct+8(2)
INTO wa_fields-field_ct.
ENDIF.
ENDIF.
* Заменяем символ ';' на ','
REPLACE ALL OCCURRENCES OF ';' IN wa_fields-field_ct WITH ',' .
CONCATENATE wa_fields-field_nm l_separ wa_fields-field_ct
INTO wa_m_ch-content.
APPEND wa_m_ch TO it_m_ch.
* ENDIF.
ENDLOOP.
REFRESH ch_it_init.
ch_it_init[] = it_m_ch[].

ENDCASE.











ENDMETHOD.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Незаполнение Плательщик при конвертации в Multicash
СообщениеДобавлено: Пт, июн 24 2016, 09:20 
Ассистент
Ассистент

Зарегистрирован:
Вс, апр 24 2016, 08:31
Сообщения: 27
Похоже, что заполнение Плательщика у вас происходит не в BADI, а в дереве DMEE.
Запустите транзакцию DMEE.
Тип дерева: MCSH
Имя дерева: посмотрите какое имя дерева DMEE у вас указано в транзакции S_PL0_09000467, когда вы выполняете конвертацию банковской выписки
В дереве DMEE щелкните мышкой два раза по самой верхней строке "Дерево DMEE: Свойства". Затем на экране справа выберете закладку "Правила присвоения". Вероятно у вас в списке правил меппинга есть правило в котором в поле "Ссылочный Ид. целевого сегмента" указано значение "Плательщик=". А для вашего нового формата нужно продублировать это правило с корректировкой на "Плательщик1=".


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Незаполнение Плательщик при конвертации в Multicash
СообщениеДобавлено: Пн, июн 27 2016, 13:17 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Чт, май 12 2011, 08:55
Сообщения: 82
Sergey, спасибо! Натолкнули на мысль и всё получилось! В самой верхней строке "Дерево DMEE: Свойства" было указано, как не странно, значение "Плательщик1=" и были уже созданы Элемент и Узел операций Плательщик1. В строке "Дерево DMEE: Свойства" изменил значение "Плательщик1=" на "Плательщик=" и изменил знак <> на = в условии узла операций DMEE_MCSH_UMSATZ KTONR 2 <> = DMEE_MCSH_UMSATZ VWZ14 2 и данные появились причём по тому файлу 1С с форматом 1.02 у которого "Плательщик1"


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Незаполнение Плательщик при конвертации в Multicash
СообщениеДобавлено: Пн, июн 27 2016, 13:52 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Чт, май 12 2011, 08:55
Сообщения: 82
Но возникла ситуация когда название Плательщика проявляется без первой буквы, "ОО Лео". Почему так получилось пока не понятно. Смещение передвигает 27 символов вправо, а как можно передвинуть влево пока тоже непонятно


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Незаполнение Плательщик при конвертации в Multicash
СообщениеДобавлено: Пн, июн 27 2016, 14:12 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, фев 21 2007, 08:50
Сообщения: 1571
Откуда: Пермь
Пол: Мужской
Dmitry80, если в настройке дерева Вы поменяли на "Плательщик", то теперь у Вас перестанут работать те банки, которые присылают "Плательщик1".
А банки реально присылают в жизни кто как хочет.
Вам надо разные деревья иметь в таком случае и S_PLO транзакцию гонять по своему дереву.
Или как-то разруливать это.
Например, все в том же BADI всегда заменять ПЛАТЕЛЬЩИК1 на ПЛАТЕЛЬЩИК при конвертации, а в дереве тогда сделать мэппинг только плательщика.

_________________
Алё, это Пакистан? Нам нужен один килограмм


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Незаполнение Плательщик при конвертации в Multicash
СообщениеДобавлено: Пн, июн 27 2016, 14:38 
Ассистент
Ассистент

Зарегистрирован:
Вс, апр 24 2016, 08:31
Сообщения: 27
Dmitry80,
ну символ у вас обрезается потому-что в первом сегменте узла видимо Source Value Length выбран 12, а по факту длина идентификатора у вас 11 (Плательщик=). Чтобы не обрезалось нужно длину этого также изменить на 11.
К сожалению не до конца понятна ситуация (это 2 формата из разных банков или банк формат поменял).
Если это разные банки, то действительно резонно советует Yozhhhhh, развести форматы в разные деревья DMEE ну или правда в BADI все приводить к одному формату (замена Плательщик1 на Плательщик). Способ, который я вам выше написал думаю также будет работать (для Плательщик и Плательщик1 просто будут находиться разные узлы со своими правилами обработки).
Вот этот текст смущает "и изменил знак <> на = в условии узла операций DMEE_MCSH_UMSATZ KTONR 2 <> = DMEE_MCSH_UMSATZ VWZ14 2". По идее это не нужно было менять...
Посмотрите у вас в файле с форматом Multicash точно теперь система номер расчетного счета контрагента и БЕ не путает между собой?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Незаполнение Плательщик при конвертации в Multicash
СообщениеДобавлено: Пн, июн 27 2016, 16:17 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Чт, май 12 2011, 08:55
Сообщения: 82
Yozhhhhh написал:
Dmitry80, если в настройке дерева Вы поменяли на "Плательщик", то теперь у Вас перестанут работать те банки, которые присылают "Плательщик1".
А банки реально присылают в жизни кто как хочет.
Вам надо разные деревья иметь в таком случае и S_PLO транзакцию гонять по своему дереву.
Или как-то разруливать это.
Например, все в том же BADI всегда заменять ПЛАТЕЛЬЩИК1 на ПЛАТЕЛЬЩИК при конвертации, а в дереве тогда сделать мэппинг только плательщика.


Заказчик планирует использовать новый формат только для одного банка. Однозначно разные деревья. Спасибо.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Незаполнение Плательщик при конвертации в Multicash
СообщениеДобавлено: Пн, июн 27 2016, 16:22 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Чт, май 12 2011, 08:55
Сообщения: 82
sergey.pryanishnikov написал(а):
Dmitry80,
ну символ у вас обрезается потому-что в первом сегменте узла видимо Source Value Length выбран 12, а по факту длина идентификатора у вас 11 (Плательщик=). Чтобы не обрезалось нужно длину этого также изменить на 11.
К сожалению не до конца понятна ситуация (это 2 формата из разных банков или банк формат поменял).
Если это разные банки, то действительно резонно советует Yozhhhhh, развести форматы в разные деревья DMEE ну или правда в BADI все приводить к одному формату (замена Плательщик1 на Плательщик). Способ, который я вам выше написал думаю также будет работать (для Плательщик и Плательщик1 просто будут находиться разные узлы со своими правилами обработки).
Вот этот текст смущает "и изменил знак <> на = в условии узла операций DMEE_MCSH_UMSATZ KTONR 2 <> = DMEE_MCSH_UMSATZ VWZ14 2". По идее это не нужно было менять...
Посмотрите у вас в файле с форматом Multicash точно теперь система номер расчетного счета контрагента и БЕ не путает между собой?


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


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB