|
07.04.2008, 11:56 | #1 |
Участник
|
Доброго времени суток!
Осваиваю функционал Nav и столкнулся со следующей проблемой: необходимость выгрузки данных во внешний текстовый файл в определенном формате. Думаю, все к этому рано или поздно приходили, поэтому прошу совета. Изобретать очередной велосипед не очень хочется. Каким образом можно такую выгрузку сделать? Где смотреть, куда копать? Пока интересны только эти вопросы, далее с форматами выгрузок, думаю, сам разберусь. Заранее спасибо.
__________________
<span style="color:#000000">Я не волшебник, я только учусь...</span> |
|
07.04.2008, 12:09 | #2 |
Участник
|
Датапорты пробовал?
|
|
07.04.2008, 12:15 | #3 |
Участник
|
Формат выгрузки не подходит.
Если возможно изменить формат выгрузки через датапорт, я бы с удовольствием использовал его. В учебнике по C/SIDE очень скудно этот раздел описан =(
__________________
<span style="color:#000000">Я не волшебник, я только учусь...</span> |
|
07.04.2008, 12:22 | #4 |
Участник
|
В общем целом нужно сделать что-то вроде этого:
Цитата:
Документ=Платежное поручение
СекцияДокумент=Платежное поручение Номер=1 Дата=01.01.2008 Сумма=xxx ПлательщикСчет=xxx Плательщик=xxx ПлательщикИНН=xxx Плательщик1=xxx ПлательщикРасчСчет=xxx ПлательщикБанк1=xxx ПлательщикБанк2=xxx ПлательщикБИК=xxx ПлательщикКорсчет=xxx ПолучательСчет=xxx Получатель=xxx ПолучательИНН=xxx Получатель1=xxx ПолучательРасчСчет=xxx ПолучательБанк1=xxx ПолучательБанк2=xxx ПолучательБИК=xxx ПолучательКорсчет=xxx ВидПлатежа=xxx ВидОплаты=xx Очередность=xx НазначениеПлатежа=xxx НазначениеПлатежа1=xxx НазначениеПлатежа2=xxx НазначениеПлатежа3=xxx КонецДокумента КонецФайла
__________________
<span style="color:#000000">Я не волшебник, я только учусь...</span> |
|
07.04.2008, 12:56 | #5 |
Участник
|
Код: FileToWrite.TEXTMODE(TRUE); FileToWrite.WRITEMODE(TRUE); FileToWrite.CREATE(FileName); FileToWrite.OPEN(FileName); FileToWrite.WRITE:= 'Документ=Платежное поручение'; FileToWrite.WRITE:= 'Документ=СекцияДокумент=Платежное поручение'; .... FileToWrite.CLOSE; |
|
07.04.2008, 13:10 | #6 |
Участник
|
Спасибо...
Задам совсем идиотский вопрос, где этот код применить?
__________________
<span style="color:#000000">Я не волшебник, я только учусь...</span> |
|
07.04.2008, 13:28 | #7 |
Участник
|
|
|
07.04.2008, 13:52 | #8 |
Участник
|
Ведь речь идет о выгрузке платежек в формате 1С, я так понимаю ? Почему бы этот код не встроить в форму 12424 (Платежные Документы Список) ?
В данном случае будет возможность выбрать нужные платежки фильтром или маркером и выгрузить только их. |
|
07.04.2008, 17:45 | #9 |
Участник
|
Собственно к этому я и пришёл
__________________
<span style="color:#000000">Я не волшебник, я только учусь...</span> |
|
07.04.2008, 13:24 | #10 |
Участник
|
Нужно что бы файл выпадал именно в таком виде? Нельзя ли что бы один документ - одна строка?
В любом случае посмотрите свойства датапорта (на пустой строке DataItem). Там есть такие вещи как: FieldStartDelimiter, FieldEndDelimiter и FieldSeparator. В частности у них есть такое значение как <NewLine>. |
|
07.04.2008, 13:35 | #11 |
Участник
|
Огромное спасибо.
Буду пробовать...
__________________
<span style="color:#000000">Я не волшебник, я только учусь...</span> |
|
07.04.2008, 17:49 | #12 |
Участник
|
Позволю заметить что встраивание подобного кода в формочку не правильный вариант. Советую завести отдельный кодъюнит в котором вы соберете весь функционал по выгрузке, загрузке данных из файлов различных клиент банков. Сегодня у вас только 1С формат, а завтра добавится других. Назвал бы я такой кодюнит Bank Client Managment, а из формочек только вызывал бы функции. Делал именно так, и вам советую.
__________________
Want to believe... |
|
08.04.2008, 12:46 | #13 |
Участник
|
В процессе работы возник вопрос.
На каком этапе учтения платежки оптимальнее всего выгружать её в клиент-банк? У нас мнения на этот счет разошлись. Кто уже с эти сталкивался, подскажите пожалуйста.
__________________
<span style="color:#000000">Я не волшебник, я только учусь...</span> |
|
08.04.2008, 13:38 | #14 |
Участник
|
И ещё маленький нюанс.
Вот что происходит с русскими символами в конечном файле: Цитата:
‚ҐабЁп”®а¬ в =1.01
Љ®¤Ёа®ўЄ =Windows ЋвЇа ўЁвҐ«м=
__________________
<span style="color:#000000">Я не волшебник, я только учусь...</span> |
|
08.04.2008, 14:21 | #15 |
Участник
|
мы выгружали после ввода, а потом после выгрузки и загрузки в КБ если балансы совпадали то их учитывали!
А иероглифы похоже из за раскладки! |
|
08.04.2008, 15:05 | #16 |
Участник
|
__________________
<span style="color:#000000">Я не волшебник, я только учусь...</span> |
|
09.04.2008, 12:33 | #17 |
Участник
|
Цитата:
Сразу после ввода платежке не присваивается номера. Для того, что бы этот номер присвоился, необходимо её распечатать. Если в Клиент-Банке всё сходится, всё здорово - мы с песнями и и танцами бежим в Нав и учитываем их. Но есть вероятность того, что оператор ошибся и ввел неверные данные. В этом случае, безусловно, мы можем сделать отмену печати. НО! В этом случае номер у платежки пропадает. И при следующей печати ей присваивается не старый номер, как могло бы быть по логике вещей, а новый. Что делать в такой ситуации?
__________________
<span style="color:#000000">Я не волшебник, я только учусь...</span> |
|
09.04.2008, 17:36 | #18 |
Участник
|
Цитата:
Сообщение от Iceman
Сразу после ввода платежке не присваивается номера. Для того, что бы этот номер присвоился, необходимо её распечатать.
Если в Клиент-Банке всё сходится, всё здорово - мы с песнями и и танцами бежим в Нав и учитываем их. Но есть вероятность того, что оператор ошибся и ввел неверные данные. В этом случае, безусловно, мы можем сделать отмену печати. НО! В этом случае номер у платежки пропадает. И при следующей печати ей присваивается не старый номер, как могло бы быть по логике вещей, а новый. Что делать в такой ситуации? |
|
09.04.2008, 17:51 | #19 |
Участник
|
Править не выйдет - ругается на то, что номер должно быть больше номера последней платежки. Данные о номерах хранятся в таблице No. Series Line. Не править же её каждый раз при очередном косяке оператора.
Дописывать функционал, ИМХО, всё таки сомнительно. Есть вероятность просто не улучшить, а поколечить. Способ, предложенный niki4550148 правдоподобен, но... ничто не идеально и любую ситуацию нужно предусмотреть. З.Ы. Поступила информация из бухгалтерии, что очередность номеров платежек в данном конкретном случае не критична. Видимо, этот вопрос отложится на несколько дней...
__________________
<span style="color:#000000">Я не волшебник, я только учусь...</span> |
|
09.04.2008, 17:40 | #20 |
Участник
|
Цитата:
Сообщение от Iceman
А можно поподробнее?
Сразу после ввода платежке не присваивается номера. Для того, что бы этот номер присвоился, необходимо её распечатать. Если в Клиент-Банке всё сходится, всё здорово - мы с песнями и и танцами бежим в Нав и учитываем их. Но есть вероятность того, что оператор ошибся и ввел неверные данные. В этом случае, безусловно, мы можем сделать отмену печати. НО! В этом случае номер у платежки пропадает. И при следующей печати ей присваивается не старый номер, как могло бы быть по логике вещей, а новый. Что делать в такой ситуации? |
|