Табл. 7.21. Ошибки, регистрируемые в разделе #ERRORS

Имя

Квалификация ошибки

ERRNUMBER

Отзываемый документ отсутствует в банке

Листинг 7.3. Пример раздела #ERRORS

#REFTRIP:
#ERRORS
0000001 10
0000001 10
0000001 10

Если код ошибки 0, отзыв переходит в состояние "Принят", в противном случае отзыв переходит в состояние "Ошибка".

Раздел #RESPONSE

Статус исполнения отзыва отражается в разделе #RESPONSE файла отправки клиенту. Данные в этом разделе передаются в тэговом формате.

Табл. 7.22. Идентификаторы полей отзыва документа

Идентификатор поля

Формат поля

Наименование

:ID

@n010

ID отзыва

:RID

@n010

ID отозванного документа

:RSTATE

@n02

Состояние отзыва

:NOTEi

@s640

Комментарий банка

Листинг 7.4. Пример раздела #RESPONSE

#RESPONSE
:ID :
:RID :
:RSTATE :01
:NOTE1 :Дубликат
#END

Тэг RSTATE может принимать следующие значения:

Табл. 7.23. Идентификаторы полей отзыва документа

Имя

Значение (h)

Описание

EXECITION

0h

Исполнен

REJECTION

1h

Отклонен

6. Функции взаимодействия с OLE-СЕРВЕРОМ

6.1. Перечень реализуемых функций

Все параметры и возвращаемые значения функций могут быть представлены строковыми выражениями размером не более 1024 байт. Возвращаемые значения об ошибках предваряются латинским “E”, например: “E Неверный код банка получателя”, “E Ошибка добавления”.

Регистрация пользователя

tPayApp. Login(string, string),string

Параметры отсутствуют.

Возвращаемое значение:

НЕ нашли? Не то? Что вы ищете?

·  положительный результат – пустая строка;

·  иначе – сообщение об ошибке.

Функция инициализации реквизита

tPayApp. SetDocumentAttribute (<string>,<string>,<string>),string

Параметры:

·  идентификатор реквизита;

·  значение реквизита;

·  тип документа.

Первые два параметра обязательны. Допустимые идентификаторы реквизита и форматы их значений перечислены для каждого типа сообщения ниже, в таблицах идентификаторов.

Третий параметр (тип документа) необязателен. Тип документа (двузначное число, значение см. в описании реквизитов соответствующего документа) передается в виде строки формата N02. Если параметр опущен, тип документа считается равным "10" (платежное поручение).

Примечание Необязательность параметра с подстановкой значения по умолчанию типа документа как у платежного поручения сохранена для совместимости со старыми версиями.

Возвращаемое значение:

·  Сообщение об ошибке

Действие:

·  Функция проверяет данные и записывает передаваемые данные в очередь атрибутов. Если в очереди атрибутов уже присутствует переданный идентификатор реквизита, то его значение заменяется на новое. Если опущен первый параметр (равнозначно вызову функции без параметров), то очередь атрибутов очищается.

Проверка:

·  Если функции передан не существующий ни для одного типа документа идентификатор реквизита, то возвращается ошибка: "E Неизвестный реквизит <Идентификатор реквизита>“.

Функция получения значения реквизита

tPayApp. GetDocumentAttribute (string,<string>,<string>),string

Параметры:

·  идентификатор документа;

·  идентификатор реквизита;

·  тип документа.

Первые два параметра обязательны. Допустимые идентификаторы реквизита и форматы их значений перечислены для каждого типа сообщения ниже, в таблицах идентификаторов.

Третий параметр (тип документа) необязателен. Тип документа (двузначное число, значение см. в описании реквизитов соответствующего документа) передается в виде строки формата N02.

Примечание Тип документа не используется и не обрабатывается. Параметр сохранен для совместимости со старыми версиями.

Возвращаемое значение:

·  Значение реквизита или сообщение об ошибке

Действие:

·  Функция осуществляет доступ к документу и возвращает реквизит, соответствующий переданному идентификатору.

Проверка:

·  Если функции передан не существующий для данного типа документа идентификатор реквизита, то возвращается ошибка: "E Неизвестный реквизит <Идентификатор реквизита> для документа типа <тип документа>“.

Функция добавления платежного поручения

tPayApp. InsertPayDocument (),string

Параметры отсутствуют.

Возвращаемое значение:

·  положительный результат – числовой идентификатор документа;

·  иначе – сообщение об ошибке.

Действие:

·  Функция осуществляет инициализацию экземпляров классов tPayApp и дочерних классов значениями реквизитов с типом сообщения "10" из очереди атрибутов, валидацию значений атрибутов добавляемого документа и собственно добавление документа, т. е. вызов метода Insert для документа данного типа.

Валидация:

·  См. описание реквизитов документов.

Функция добавления произвольного документа

tPayApp. InsertDocument (string),string

Параметры:

·  Тип документа Параметр обязателен. Тип документа (двузначное число, значение см. в описании реквизитов соответствующего документа) передается в виде строки формата N02. Данное значение может принимать следующие значения: “10” – для платежного поручения и “14” - для заявления на аккредитив.

Возвращаемое значение:

·  положительный результат – числовой идентификатор документа;

·  иначе – сообщение об ошибке.

Действие:

·  Функция осуществляет инициализацию экземпляров классов tPayApp и дочерних классов значениями реквизитов с типом сообщения "10" из очереди атрибутов, валидацию значений атрибутов добавляемого документа и собственно добавление документа, т. е. вызов метода Insert для документа данного типа.

Валидация:

·  См. описание реквизитов документов.

Функция изменения документа

tPayApp. UpdatePayDocument (string),string

Параметры:

·  идентификатор документа.

Возвращаемое значение:

·  положительный результат – пустая строка;

иначе – (в т. ч. недопустимости изменений, например если документ уже отправлен) сообщение об ошибке (недопустимости изменений).

Действие:

·  Функция осуществляет доступ к документу, замену (установление новых значений) полей экземпляров классов tPayApp и дочерних классов значениями реквизитов из очереди атрибутов, валидацию изменяемого документа (вызов процедуры валидации) и собственно изменение документа, т. е. вызов метода Update для данного типа сообщения.

Валидация:

·  См. описание реквизитов документов.

Функция удаления документа

tPayApp. DeletePayDocument (string),string

Параметры:

·  идентификатор документа.

Возвращаемое значение:

·  положительный результат – пустая строка

·  иначе – сообщение об ошибке или недопустимости удаления (например, документ сквитован). Действие:

·  Функция осуществляет доступ к документу, валидацию (проверку допустимости удаления), и собственно удаление документа, т. е. вызов метода Delete для данного типа сообщения.

Валидация:

·  Если документ имеет статус "отправлен", его удаление невозможно. Во всех остальных случаях документ будет удален.

Функция определения статуса документа

tPayApp. GetStatusPayDocument(string),string

Параметры:

·  Идентификатор документа

Возвращаемое значение

·  Статус документов или ошибку 'Е-текст'. Возможны следующие варианты статусов: "", "Отправлен","Ошибка","Принят", "Подтвержден", "Создан", "Отказан", "Удален".

Функция получения курса валюты

tCourse. GetRate (string,<string>,<string>),string

Параметры:

·  дата курса;

·  код валюты;

·  параметры выборки курса валюты. Может принимать два значения: "HARD" и "SOFT".

Возвращаемое значение:

·  Значение реквизита или сообщение об ошибке. В случае если третьим параметром передается значение "HARD", то возвращается значение курса на дату указанную в первом формате. Если курс на данную дату отсутствует, то возвращается сообщение об ошибке. В случае если третьим параметром передается значение "SOFT", то возвращается значение курса на дату указанную в первом параметре. Если курс на данную дату отсутствует, то возвращается значение последнего доступного курса валюты за предшествующие даты. Значение курса валюты возвращается в формате @N15.6

Действие:

·  Функция осуществляет доступ к справочнику курсов валют и возвращает реквизит, соответствующий переданному идентификатору.

Функции поиска документов

tPayApp. SetSearch (<string>,<string>,<string>, <string>),string

Параметры:

·  тип платежного документа, допустимые значения: “01”,“10” - платежное поручение, “14” - заявление на аккредитив;

·  имя атрибута, список допустимых имен атрибутов приведен в таблице соответствия имен и полей класса.

·  искомое значение атрибута

·  способ поиска для данного атрибута, допустимые значения:

“ТОЧНОЕ” “EQU”

“МИНИМАЛЬНОЕ” “MIN”

“МАКСИМАЛЬНОЕ” “MAX”

“ВХОЖДЕНИЕ” “SUB”

Действие:

·  Устанавливает атрибуты поиска;

tPayApp. StartSearch(<string>),string

Параметры:

·  Индикатор значений поиска:

“ALL” ‘ВСЕ’ - поиск среди всех документов;

“1C” ‘1С’ - поиск только среди “внешних” документов;

Действие:

·  Осуществляет поиск по заданным условиям

tPayApp. NextSearch(),string

Действие:

·  Возвращает следующий найденный документ (идентификатор)

tPayApp. CloseSearch(),string

Действие:

·  Закрывает текущий сеанс поиска и очищает все ранее заданные параметры поиска.

6.2. Реквизиты документа

Табл. 8.1. Перечень реквизитов платежного поручения

Наименование реквизита (характеристики)

Идентификатор реквизита

Размер

Формат

Выравнивание

Обязателен

Значение по умолчанию

Дата поручения

DATETRF

10

D6

——

НЕТ

Текущая дата

Номер поручения

NUMBER

10

S10

Влево

ДА

Отсутствует

Код валюты платежа

CRNCODE

3

N03

——

НЕТ

Код национальной валюты

Код банка плательщика

BANKCODEPAYER

9

N_9

——

ДА

Код нашего банка из настроек

Корсчет банка плательщика

ACCOUNTCRPPAYER

25

S25

Вправо

НЕТ

Корсчет нашего банка из настроек

Наименование банка плательщика

NAMEBNKPAYER

80

S80

Влево

НЕТ

Наименование нашего банка из настроек

Город банка плательщика

CITYBNKPAYER

40

S40

Влево

НЕТ

Город нашего банка из настроек

Номер счёта плательщика

ACCOUNTPAYER

25

S25

Вправо

ДА

Наш расчётный счёт из настроек

ИНН плательщика

TAXIDPAYER

12

S12

Влево

ДА

Наш ИНН из настроек

Наименование плательщика

NAMEPAYER

80

S160

Влево

НЕТ

Собственное наименование организации

Сумма платежа

AMOUNT

15

N_15.2

——

ДА

Отсутствует

Код банка получателя

BANKCODEADDRESS

9

N_9

——

ДА

Отсутствует

Корсчет банка получателя

ACCOUNTCRPADDRESS

25

S25

Вправо

НЕТ

Отсутствует

Наименование банка получателя

NAMEBNKADDRESS

80

S80

Влево

ДА

Отсутствует

Город банка получателя

CITYBNKADDRESS

40

S40

Влево

ДА

Отсутствует

Номер счёта получателя

ACCOUNTADDRESS

25

S25

Вправо

ДА

Отсутствует

ИНН получателя

TAXIDADDRESS

12

S12

Влево

ДА

Отсутствует

Наименование получателя

NAMEADDRESS

160

S160

Влево

ДА

Отсутствует

Вид операции

OPERATION

2

N_2

——

ДА

Отсутствует

Приоритет платежа

PRIORITY

2

N_2

——

ДА

Отсутствует

Срок платежа

DATEEXP

10

D6.

——

ДА

Отсутствует

Вид платежа (почтой, телеграфом)

DISPATCHNAME

30

S30

Влево

ДА

Отсутствует

Назначение платежа

ASSIGNMENT

640

S640

——

ДА

Отсутствует

Дата списания

DATE_SP

10

D06B

Влево

НЕТ

Отсутствует

Статус составителя

STAT_S

2

S2

Влево

НЕТ

Отсутствует

КПП плательщика

KPP_PLK

9

S9

Влево

НЕТ

Отсутствует

КПП получателя

KPP_POL

9

S9

Влево

НЕТ

Отсутствует

Код бюджетной классификации

KBK

19

S19

Вправо

НЕТ

Отсутствует

ОКАТО

OKATO

11

S11

Влево

НЕТ

Отсутствует

Основание платежа

OP

2

S2

Влево

НЕТ

Отсутствует

Налоговый период

NAL_PER

10

S10

Влево

НЕТ

Отсутствует

Номер документа

NDOK_PP

15

S15

Влево

НЕТ

Отсутствует

Дата документа

DDOK_PP

10

D06

Влево

НЕТ

Отсутствует

Тип платежа

TYPE_PAYM

1

S2

Влево

НЕТ

Отсутствует

Табл. 8.2. Русскоязычные значения идентификаторов платежного поручения

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17