Файловый обмен: различия между версиями
Перейти к навигации
Перейти к поиску
Admin (обсуждение | вклад) |
Admin (обсуждение | вклад) |
||
Строка 31: | Строка 31: | ||
{| border="1" | {| border="1" | ||
!Имя команды | !Имя команды | ||
− | !Назначение | + | !Назначение |
|:CRCERROR | |:CRCERROR | ||
|Ошибка контрольной суммы | |Ошибка контрольной суммы | ||
Строка 44: | Строка 44: | ||
|Список выданных ключей | |Список выданных ключей | ||
|} | |} | ||
+ | |||
+ | Принцип формирования файла | ||
+ | #Каждая команда начинается с новой строки без пробелов; | ||
+ | #Все команды, кроме табличных команд, пишутся в одну строку; | ||
+ | #Все ключевые поля (идентификаторы) имеют тип «число» размером 11 байт. Для обозначения вставки используется ключ меньше нуля. В ответе будет возвращено, какой отрицательный ключ был заменен реальным ключом ЕСБД. | ||
+ | #Табличные данные передаются в виде: | ||
+ | * В строках, следующих за командой, перечисляется список имен полей, разделенных символом табуляции. После строки с именами полей указываются строки с данными, поля которых также разделяются символом табуляции. Конец блока определяется концом файла, либо строкой, содержащей следующую команду. | ||
+ | * Пример: | ||
+ | :<ИМЯ_КОМАНДЫ> | ||
+ | |||
+ | ПОЛЕ1<символ_табуляции>ПОЛЕ2<символ_табуляции>ПОЛЕ3 | ||
+ | |||
+ | ЗНАЧЕНИЕ1<символ_табуляции>ЗНАЧЕНИЕ2<символ_табуляции>ЗНАЧЕНИЕ3 | ||
+ | |||
+ | ЗНАЧЕНИЕ1<символ_табуляции>ЗНАЧЕНИЕ2<символ_табуляции>ЗНАЧЕНИЕ3 |
Версия от 10:12, 31 июля 2008
Описание структуры и команд входящего файла
- Все входящие файлы архивируется в формате ZIP;
- Файлы должны иметь расширение ZIP;
- Имена файлов могут быть любыми на усмотрение страховой компании, но они не должны повторяться;
- Внутри входящего архивного файла могут быть несколько входящих командных файлов;
- Все даты передаются в ЕСБД в формате ДД.ММ.ГГГГ, разделитель целой и дробной части – «.»(точка), разделитель разрядов – отсутствует. Логические поля имеют варианты значения True, False
- Все ключевые поля (идентификаторы) имеют тип «число» размером 11 байт. Для обозначения вставки используется ключ меньше нуля. В ответе будет возвращено, какой отрицательный ключ был заменен реальным ключом ЕСБД.
- Команды входящих командных файлов
Имя команды | Назначение |
---|---|
:GETTABLEDATA= | запрос данных |
:TABLE= | передача данных для вставки/изменения/удаления записи из таблицы |
:CHILDTABLE= | обеспечивает единую транзакцию. Записи будут сохранены, только в случае если была сохранена запись из команды :TABLE |
:DYNAMICCHILDTABLE= | Аналогична команде :CHILDTABLE, только связь с :TABLE – динамическая |
Описание структуры и команд файла-ответа
- На каждый непустой входящий файл, система формирует файл ответа, причем:
Имя файла – имеет формат <Имя_входящего_файла>.ANS.ZIP;
Файл заархивирован в формате ZIP;
Внутри архивного файла-ответа содержатся файлы ответов на командные файлы содержавшиеся во входящем файле;
Имена файлов ответов имеют формат <Имя_командного_файла>.ANS - Команды файлов ответов:
Имя команды | Назначение | :CRCERROR | Ошибка контрольной суммы |
---|---|---|---|
:ERROR= | Ошибка с описанием и указанием номера строки | ||
:TABLE= | Записи таблицы, сформированные по запросу :GETTABLEDATA | ||
:CHANGEID | Список выданных ключей |
Принцип формирования файла
- Каждая команда начинается с новой строки без пробелов;
- Все команды, кроме табличных команд, пишутся в одну строку;
- Все ключевые поля (идентификаторы) имеют тип «число» размером 11 байт. Для обозначения вставки используется ключ меньше нуля. В ответе будет возвращено, какой отрицательный ключ был заменен реальным ключом ЕСБД.
- Табличные данные передаются в виде:
- В строках, следующих за командой, перечисляется список имен полей, разделенных символом табуляции. После строки с именами полей указываются строки с данными, поля которых также разделяются символом табуляции. Конец блока определяется концом файла, либо строкой, содержащей следующую команду.
- Пример:
:<ИМЯ_КОМАНДЫ>
ПОЛЕ1<символ_табуляции>ПОЛЕ2<символ_табуляции>ПОЛЕ3
ЗНАЧЕНИЕ1<символ_табуляции>ЗНАЧЕНИЕ2<символ_табуляции>ЗНАЧЕНИЕ3
ЗНАЧЕНИЕ1<символ_табуляции>ЗНАЧЕНИЕ2<символ_табуляции>ЗНАЧЕНИЕ3