Страница 1 из 1

Экспорт Платежек в ФРО

Добавлено: 07 апр 2008, 15:27
k_vit
Добрый день


Стояла задача связать Гал-ку с Клиент-Банком, а именно импортировать из Гал-ки платежки.
Структура текстового файла, предоставленная банком имеет вид

#1|PayDocRuXE
..Поля..
;end
#2|PayDocRuXE
..Поля..
;end

Возник вопрос, если вдруг идет экспорт нескольких платежек, то нужно нумеровать документы #1|PayDocRuXE, #2|PayDocRuXE, #3|PayDocRuXE, т.е. организовать счетчик.
Каким образом реализовать эту нумерацию?

Добавлено: 07 апр 2008, 16:02
edward_K
я когда то делал путем подписывания формы. Уж не помню точно как. Смысл в том что узнавал что за прототип (fcenv=On). На него делал присоедненку, там стандартным счетчиком GetNextNumSTr считал переменную ну и выводил ее в присоединенку. Присоединенку не помню чем компилил (вроде в отдельном файле).
А так посмотрите ExpImpScript.vih - с помощью объекта из него можно сделать все что угодно. В 712 он валялся где то в exe.

Добавлено: 07 апр 2008, 16:04
Polimer
А это не номер платежки?
Если нет, то не понятен смысл этого поля, может его вообще не нужно заполнять.

Добавлено: 07 апр 2008, 16:10
edward_K
да есть еще поля которые в списке не видны
типа sImportField

Добавлено: 07 апр 2008, 16:16
k_vit
В настройках импорта есть что-то типа присоединенки.
Она содержит:

Код: Выделить всё

.{
^
^
^
....
.}
И вроде конструкции типа .begin end. и .var .endvar работают.

Пытался описать, что-то вроде

Код: Выделить всё

.var
 i : integer;
.endvar
.begin
  i := 0;
end.
.fields
  i
.endfields
.{
.begin
  Inc(i);
end.
i - ^ // добавлял для i
^
^
^
....
.}
в результате даёт ошибку: Попытка описать поле (i) с именем, уже использованным для описания переменной

P.S. по-поводу ExpImpScript.vih, спасибо, нашел такой файл.. учту

Добавлено: 07 апр 2008, 16:18
k_vit
> Polimer

Нет, это идентификатор, с которого начинается новая платежка

Добавлено: 07 апр 2008, 16:41
edward_K
а во вспомнил.
переменные да - использовать никак.

делал типа так
.begin
SetLastNumd(9999,0)
end.

в настройке полей ставил формулу GetLastNumD(9999) в первом поле
за точность не ручаюсь, но где то рядом.

Добавлено: 08 апр 2008, 08:41
k_vit
попробовал SetLastNumd(9999,0) - ругается : Нет такой функции, поля или метода SetLastNumd

Видимо ресурс у меня не подключен с этими функциями

Добавлено: 08 апр 2008, 10:03
k_vit
Точнее, GetLastNumD, нашел в G_LastNumD.dll, а вот SetLastNumD нет.
Попробовал использовать только GetLastNumD, только вот передоваемые параметр не понятен:

GetLastNumD(9999) - работает с шагом в 10, т.е. 11, 21, 31, 41

Добавлено: 08 апр 2008, 10:25
k_vit
> edward_K


Спасибо, разобрался....
Есть еще функции GetLastNumD__, ей и воспользовался

Добавлено: 09 апр 2008, 07:19
PViP
k_vit, в связь банке номер импортируемой записи не обязателен!
Достаточно

Код: Выделить всё

#|PayDocRuXE
Поэтому просто строчку выводи и не парься!

Добавлено: 09 апр 2008, 08:14
k_vit
> PViP

Спасибо, действительно, попробовал - импорт нормально проходит