Универсальная загрузка в табличную часть документа

Роман16 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
05.07.2014

Цель создаваемой обработки – запускаться в интерфейсе 1С, заполнять номенклатурную табличную часть любого документа 1С УТ 11 (управляемые формы) данными, берущимися из файла формата XLS.

В диалоге документа в интерфейсе 1С (Реализация, Поступление и т.д.), например, по нажатию кнопки "Загрузить из Excel" появляется окно обработки. в котором:

1. Выбираем файл XLS.

2. Выбираем документ, который требуется заполнить (на тот случай, если обработка запущена самостоятельно, а не из диалога документа).

3. Выбираем табличную часть документа, которую требуется заполнить (на тот случай, если обработка запущена самостоятельно, а не из диалога документа).

4. На форме обработки автоматически по колонкам табличной части формируется изначально пустая таблица:

Реквизит табличной части Номер колонки загружаемого файла

Номенклатура.Код (пусто)

Номенклатура.Артикул (пусто)

Количество (пусто)

Цена (пусто)

Сумма (пусто)

5. Заполняем номера колонок загружаемого файла по их номеру из XLS файла. Если для указанного вида документа уже заполняли номера колонок, то программа автоматически проставит их. Настройки запоминаются в разрезе пользователей, т.е. у каждого пользователя свои настройки.

Пример:

Реквизит табличной части Номер колонки загружаемого файла

Номенклатура.Код 1

Номенклатура.Артикул (пусто)

Количество 4

Цена 5

Сумма 6

6. Указываем префикс номенклатуры, который будет использован в поиске.

Вариантов поиска будет четыре:

- Поиск номенклатуры по артикулу (по всем элементам справочника номенклатуры),

- Поиск по артикулу и префиксу кода (префикс определяет часть справочника номенклатуры),

- Поиск по коду (например, для загрузки документов с товарами, имеющими коды разных префиксов),

- Поиск по коду и префиксу кода (для загрузки документов с одинаковыми префиксами кодов, но не указанными явно. Т.о., для непосредственной идентификации при поиске используется сшивание указанного в обработке префикса и кода товара из документа)

7. Нажимаем кнопку «Загрузить». После нажатия будет считан документ XSL, причем длину считываемой таблицы и номера строк начала и окончания указывать не требуется, обработка автоматически определит эти данные.

8. Те строки, которые удалось загрузить, отобразятся в таблице предварительного просмотра:

Галка Искомый текст Найденный код Найденный артикул Найденная номенклатура Количество Цена Сумма

v Искомый текст1 Номенклатура 1.Код Номенклатура 1.Артикул Номенклатура 1 1 100 100

v Искомый текст2 Номенклатура 2.Код Номенклатура 2.Артикул Номенклатура 2 2 200 400

v Искомый текст3 Номенклатура 3.Код Номенклатура 3.Артикул Номенклатура 3 3 300 900

v Искомый текст4 Номенклатура 4.Код Номенклатура 4.Артикул Номенклатура 4 4 400 1600

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

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

11. В шапке обработки выбираем ставку НДС, которая автоматически установится в загружаемую табличную часть. Если ставка НДС для этого вида документа уже была выбрана, то обработка автоматически установит её.

12. Нажимаем кнопку «Загрузить строки в документ». После нажатия кнопки потребуется выбрать вариант загрузки строк в документ при наличии в нем заполненной табличной части:

- Очистка табличной части и загрузка строк.

- Добавление загружаемых строк к уже существующим строкам.

13. После выбора варианта, отмеченные флагами строки будут загружены в документ. В загруженных строках автоматически установится номенклатура, единица измерения (берётся базовая по номенклатуре), количество, цена, сумма, ставка НДС. Загрузка серий, характеристик, ГТД и прочих возможных колонок табличной части не предусматривается.

Заявки фрилансеров