Написать функции создания и заполнения данных для БП 3.0
Выполнено
esfomin
2 |
8
20 сентября 2021 в 11:15:34
(3 года 7 недель 2 дня 8 часов назад)
2000
V8.x Бухгалтерия Предприятия
24.08.2017 02:18:54
до 27.08.2017
Текст задания
На крайнем релизе БП 3.0 требуется создать внешнюю обработку (модифицировать конфигурацию нельзя), в которой:
На форме будут отображены:
1. реквизиты:
- ИНН - строка
- КПП - строка
- контрагент - справочник.контрагенты
кнопка "создать и заполнить", при нажатии на которую система выполнит серверную внеконтексную функцию, результатом которой будет значение для реквизита формы "контрагент". Контрагент должен быть создан по ИНН, либо найден в базе, если уже есть непомеченный на удаление с такими ИНН и КПП. Если контрагент создается, то его реквизиты (адрес, руководитель, ОГРН и т.д.) должны быть заполнены согласно стандартному заполнению на форме при вводе ИНН в поле наименования и нажатия на "Заполнить" (или "Заполнить по ИНН").
кнопка "Заполнить", при нажатии на которую система выполнить внеконтекстную процедуру, в которой контрагенту из одноименного реквизита формы будет назначен Банк, найденный по БИК и расчетный счет по переданным параметрам.
3. реквизиты:
- договор - справочник.договоры
- организация - справочник.организации
кнопка "Заполнить", по которой выполнит внеконтекстную функцию, результатом которой будет возвращен договор с контрагентом. Этим значением должен быть заполнен реквизит "договор" контрагента. Если у контрагента нет договора от текущего дня, то система создаст новый договор на контрагента и организацию из одноименных реквизитов формы, установит в нем номер по порядку всех договоров (нумерация сквозная, договора префиксуются, префикс должен сохраниться), текущую дату, вид договора с покупателем, а так же прочие реквизиты, которые заполняются по умолчанию при создании нового договора на контрагента (подписи, валюту и т.д.).
4. реквизиты:
- шаблон договора - справочник.шаблоны договоров
- путь сохранения - строка
кнопка "Заполнить", по которой система выполнит внеконтекстную функцию, результатом которой будет имя временного файла сохраненного на диске шаблона договора в формате rtf или pdf (любой из предложенных) и поместит это имя файла в реквизит "Путь сохранения". Файл создается, если у этого договора еще нет вложений. Иначе используется первое вложение у этого договора. Если файл создается, то он должен быть прикреплен к договору как вложенный файл.
5. Общую внеконтекстуную функцию, которая вернет структуру данных - "контрагет, договор, путь сохранения" по переданным в нее реквизитам "ИНН, КПП, БИК, расчетный счет, организация, шаблон договора" и заполнит реквизиты формы "Контрагент, договор и путь сохранения"
Данные функции будут использоваться в общей логике работы программы для создания и заполнения данных о контрагентах и договорах, а так же отправке договора контрагенту по его запросу (реализация этой логики в задачу не входит)