Экспорт/импорт в банк-клиенты (строка налогов в БК)
Модераторы: m0p3e, edward_K, Модераторы
-
- Местный житель
- Сообщения: 222
- Зарегистрирован: 04 июн 2008, 14:35
- Откуда: Стерлитамак
- Контактная информация:
Экспорт/импорт в банк-клиенты (строка налогов в БК)
Настраиваю выгрузку в банк-клиент. Добрался до налогов и застрял. Как выгрузить данные по налоговому платежу?
В таблице PLPOR все это хранится в одном поле. Как разделить и выгружать каждый отдельно?
строка примерно такого вида:
;КБК;ОКАТО;ТП;МС.05.2008;0;04.06.2008;НС;[/i]
В таблице PLPOR все это хранится в одном поле. Как разделить и выгружать каждый отдельно?
строка примерно такого вида:
;КБК;ОКАТО;ТП;МС.05.2008;0;04.06.2008;НС;[/i]
Последний раз редактировалось ilshat 06 июн 2008, 11:41, всего редактировалось 1 раз.
-
- Местный житель
- Сообщения: 1357
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: СПб, ЭП-Аудит
- Контактная информация:
F1
2. Если при экспорте документа надо какое-то из полей разделить на несколько независимых полей, то необходимо использовать функцию ExtractDelimitedWord(<имя поля>,<номер слова>, <'разделитель'>) в качестве Формулы для разделяемого поля, например: ExtractDelimitedWord(PlPor.Tax,7,';'). Где PlPor.Tax – название экспортируемого поля документа, 7 – номер слова в этом поле, ; – символ-разделитель между словами.
Данная функция может вам понадобиться, когда работающий с вами банк, например, изменит форму платежного документа, а в системе "ГАЛАКТИКА ERP" форма останется прежней. Если вам надо разделить шестое поле Строка налогов (из группы полей Назначение платежа) на четыре поля согласно новой форме банка, придерживайтесь следующего порядка действий:
· на вкладке "Поля заголовка" выберите четыре раза поле Строка налогов по F7;
· для каждого из них вручную наберите Формулу — ExtractDelimitedWord(PlPor.Tax, <номер слова в поле>,';');
· с помощью кнопок [Вверх] и [Вниз] переместите новые записи согласно порядку вывода информации в экспортируемый файл.
2. Если при экспорте документа надо какое-то из полей разделить на несколько независимых полей, то необходимо использовать функцию ExtractDelimitedWord(<имя поля>,<номер слова>, <'разделитель'>) в качестве Формулы для разделяемого поля, например: ExtractDelimitedWord(PlPor.Tax,7,';'). Где PlPor.Tax – название экспортируемого поля документа, 7 – номер слова в этом поле, ; – символ-разделитель между словами.
Данная функция может вам понадобиться, когда работающий с вами банк, например, изменит форму платежного документа, а в системе "ГАЛАКТИКА ERP" форма останется прежней. Если вам надо разделить шестое поле Строка налогов (из группы полей Назначение платежа) на четыре поля согласно новой форме банка, придерживайтесь следующего порядка действий:
· на вкладке "Поля заголовка" выберите четыре раза поле Строка налогов по F7;
· для каждого из них вручную наберите Формулу — ExtractDelimitedWord(PlPor.Tax, <номер слова в поле>,';');
· с помощью кнопок [Вверх] и [Вниз] переместите новые записи согласно порядку вывода информации в экспортируемый файл.
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
См. закон по порядку оформления платежки, там у каждого поля цифирки проставлены, а здесь комментарии что откель.
КПП Плательщика - plpor.denosch2 // 102
КПП Получателя - plpor.denosch3 // 103
поля из 6-го поля "назначение платежа" (101, 104..110) вынимаются так
ФОРМУЛЫ ДЛЯ ПОЛЕЙ 101,104..110
ExtractDelimitedWord(PlPor.Tax,1,';') // 101
ExtractDelimitedWord(PlPor.Tax,2,';') // 104
ExtractDelimitedWord(PlPor.Tax,3,';') // 105
ExtractDelimitedWord(PlPor.Tax,4,';') // 106
ExtractDelimitedWord(PlPor.Tax,5,';') // 107
ExtractDelimitedWord(PlPor.Tax,6,';') // 108
ExtractDelimitedWord(PlPor.Tax,7,';') // 109
ExtractDelimitedWord(PlPor.Tax,8,';') // 110
где PlPor.Tax - 6-е поле "назначения платежа"
1..8 - номер слова в строке
';' - символ разделитель
КПП Плательщика - plpor.denosch2 // 102
КПП Получателя - plpor.denosch3 // 103
поля из 6-го поля "назначение платежа" (101, 104..110) вынимаются так
ФОРМУЛЫ ДЛЯ ПОЛЕЙ 101,104..110
ExtractDelimitedWord(PlPor.Tax,1,';') // 101
ExtractDelimitedWord(PlPor.Tax,2,';') // 104
ExtractDelimitedWord(PlPor.Tax,3,';') // 105
ExtractDelimitedWord(PlPor.Tax,4,';') // 106
ExtractDelimitedWord(PlPor.Tax,5,';') // 107
ExtractDelimitedWord(PlPor.Tax,6,';') // 108
ExtractDelimitedWord(PlPor.Tax,7,';') // 109
ExtractDelimitedWord(PlPor.Tax,8,';') // 110
где PlPor.Tax - 6-е поле "назначения платежа"
1..8 - номер слова в строке
';' - символ разделитель
-
- Местный житель
- Сообщения: 222
- Зарегистрирован: 04 июн 2008, 14:35
- Откуда: Стерлитамак
- Контактная информация:
все получилось спасибо
но возник другой вопрос
в формате 1С присутствует еще и заголовок, типа вот этого
1CClientBankExchange
ВерсияФормата=1.01
Кодировка=Windows
Получатель=
ДатаНачала=02.06.2008
ДатаКонца=02.06.2008
РасчСчет=40702810000100000067
как туда загнать данные по дате и расч счету?
и сразу вопрос по импорту там вообще непонятно как сделать шаблон формы настройки - поделитесь примером, если кто делал?
но возник другой вопрос
в формате 1С присутствует еще и заголовок, типа вот этого
1CClientBankExchange
ВерсияФормата=1.01
Кодировка=Windows
Получатель=
ДатаНачала=02.06.2008
ДатаКонца=02.06.2008
РасчСчет=40702810000100000067
как туда загнать данные по дате и расч счету?
и сразу вопрос по импорту там вообще непонятно как сделать шаблон формы настройки - поделитесь примером, если кто делал?
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
1. Есть два пути. 1- прописать жестко в текстовой форме, В принципе можно навешать присоединенку(прототип узнаете с помощью Fcenv=On) - вроде у меня получалось когда то это делать. 2 - дописать постобработку с помощью ExpImpScript.vip (где то он был в доке или в exe). В ТП спросите - вроде в пире была тробла, чтобы позволить выделять поля для шапки и списка документов.
2. Самый быстрый и надежный способ настроить импорт - это сохранить настройку экспорта в файл по локальному меню, а потом в импорте ее загрузить. При этом конвертация полей пройдет в автомате. Останется слегка подправить и все. Ну и чуть понимая процесс и используя переменную sImportField можно сделать многое. С DBf проблем обычно вообще не возникает, а для текстовой формы придется повозиться.
2. Самый быстрый и надежный способ настроить импорт - это сохранить настройку экспорта в файл по локальному меню, а потом в импорте ее загрузить. При этом конвертация полей пройдет в автомате. Останется слегка подправить и все. Ну и чуть понимая процесс и используя переменную sImportField можно сделать многое. С DBf проблем обычно вообще не возникает, а для текстовой формы придется повозиться.
-
- Местный житель
- Сообщения: 222
- Зарегистрирован: 04 июн 2008, 14:35
- Откуда: Стерлитамак
- Контактная информация:
Риторический вопрос: почему столь распространенный формат 1С бы не поддерживать? Ну понятно конкуренты, но в итоге мучения программистам только!
По делу: тот же формат 1С стандартен и используется практически всеми банками, а вот dbf каждый банк будет кидать по своему. Настраивать и отлаживать сколько придется?
Даже не надеясь: ведь у многих есть наработки по этому вопросу, поделитесь dot файлами экспорта/импорта.
По делу: тот же формат 1С стандартен и используется практически всеми банками, а вот dbf каждый банк будет кидать по своему. Настраивать и отлаживать сколько придется?
Даже не надеясь: ведь у многих есть наработки по этому вопросу, поделитесь dot файлами экспорта/импорта.
-
- Местный житель
- Сообщения: 222
- Зарегистрирован: 04 июн 2008, 14:35
- Откуда: Стерлитамак
- Контактная информация:
Я не буду спорить про форматы. Ничего не имею против dbf. Откуда я пришел вообще не имеет отношения к делу. Ситуация на данный момент такая, что из большинства банков фины выгружают именно в 1С формат и все это ползет в самописные проги. А они даже после запуска Галактики будут жить еще немало. Т.е. выходит финам нужно будет делать выгрузку в два формата. Мы поэтому хотели использовать то что есть. Один раз выгрузили в файл, а дальше грузим в свои ресурсы - галактика+своя прога.