Техническое руководство > Экспорт документов в 1С [●] | « пред. | след. » |
Логика формирования таблицы в DBF/CSV-файл такая.
1.Сначала берётся документ, добавляется запись в таблицу, заполняются поля:
DOC_NUM -- Номер документа (bills.bill_number) DOC_DATE -- Дата документа. Зависит от глобального параметра use_bill_date_in_doc_date_1C -- (plAdmin -> Справочники\Глобальные параметры -> Экспорт в 1С\"Использовать дату выставления счета как дату документа"): -- -если флаг сброшен (по умолчанию) - дата соответствует концу отчётного периода (bills.end_date) -- -если флаг установлен - дата соответствует дате выставления счёта (bills.bill_date) DOC_TYPE -- Код экспорта из справочника "Типы документов" (doc_types.export_code) NAME -- Краткое название клиента (clients.code) CODE -- Код экспорта клиента (clients.export_code) CONTR_NUM -- Название (номер) договора (client_contracts.name) CONTR_DATE -- Дата заключения договора (client_contracts.begin_dt) |
Если в экспортируемом документе указан оператор, то номер и дата договора берутся из доп. параметров договора:
CURRENCY -- Код валюты статьи счёта (currencies.export_code, если не указано, то просто bill_entries.currency или bills.currency) REMARK -- Примечение (bills.remark) BASE -- ? (не заполняется - осталось от прошлого) TOTAL_SUM -- Сумма (bills.total_sum) NDS_SUM -- Сумма НДС (bills.nds_sum) REFDOCNUM -- Номер родительского документа (bills.parent_doc_num) BILL_DATE -- дата выставления счёта (bills.bill_date) BEGIN_DATE -- дата первого дня расчётного периода (bills.begin_date) END_DATE -- дата последнего дня расчётного периода (bills.end_date) |
2.Затем перебираются статьи документов, для каждой статьи создаётся по одной записи в этой же таблице, заполняются поля:
NO -- Порядковый номер статьи документа (начиная с 1) DOC_NUM -- Номер документа (bills.bill_number) NAME -- Наименование статьи (bill_entries.name) CODE -- Код экспорта статьи (bill_entry_types.export_code) TOTAL_SUM -- Сумма (bill_entries.total_sum_c) NDS_SUM -- Сумма НДС (bill_entries.nds_sum_c) VALUE_SUM -- Количество услуг (bill_entries.value_sum) VALUE_NAME -- Единица измерения (bill_entries.value_name) |
Эту логику можно переопределить:
1.Если указан глобальный параметр c1_use_custom_view, то будет использоваться указанная view для экспорта в 1С (иначе - старая логика, описанная выше).
2.View должна соединяться с bills_tmp - bills_tmp заполняется bill_id, выделенными в приложении plBill.
3.Для view есть предопределённые поля:
EXP_DATE -- текущая дата (с локального компьютера) EXP_BEG_DT -- дата "период с", подставляется из фильтра из главного окна EXP_END_DT -- дата "период по", подставляется из фильтра из главного окна |
Если эти поля есть во view, то их значения затираются приложением локально.
4.Сохранять можно в dbf и csv, имя файла по-умолчанию предлагается по формату: bills_to_1c_<EXP_BEG_DT>_<EXP_END_DT>.dbf, однако это можно переопределить глобальным параметром c1_file_name_fmt.