Универсальная обработка для 1С:Предприятие 8.1, позволяющая производить импорт и создание документа «Счет на оплату покупателю».
Задача импорта сводится к двум этапам:
- Этап проверки и чтения данных из файла импорта.
Файл импорта имеет текстовой формат и расширение файла должно быть «txt». Содержание файла структурированное, содержащие в себе: - Реквизиты счета;
- Данные по заказанным позициям;
- Итоговые данные счета;
- Создание документа "Счет на оплату покупателю" в базе 1С.
Пример файла импорта:
------------------------------------------------------------ //Номер заказа 0-3 //Дата заказа 01.07.2010 //Фамилия Фамилия*********************** //Имя имя********************** //Улица Улица************************* //Город Город************************* //тел1 телефон1******* //тел2 телефон2******* //Позиция 1 //Количество окон (шт) 39 шт. //Оконная конструкция Оконная конструкция - VEKA SOFT //Размеры изделия (ВхШ) 1880х1750 //цена окна 9478,98 //Общая сумма окон 369680,22 //Текст второй строки Цвет : белый Остекление: 3 x 4/12/4/12/4 Фурнитура: 2 x Глухое остекление 1 x ПО правый с микропровет. //Приспособления Погрузка 1.000 шт. 21,00 819,00 //Позиция 2 //Количество окон (шт) 13 шт. //Оконная конструкция Оконная конструкция - VEKA SOFT //Размеры изделия (ВхШ) 1880х2570 //цена окна 12489,12 //Общая сумма окон 162358,56 //Текст второй строки Цвет : белый Остекление: 5 x 4/12/4/12/4 Фурнитура: 4 x Глухое остекление 1 x ПО правый с микропровет. //Приспособления Погрузка 1.000 шт. 21,00 273,00 //Позиция 3 //Количество окон (шт) 3 шт. //Оконная конструкция Оконная конструкция - VEKA SOFT //Размеры изделия (ВхШ) 1880х870 //цена окна 6159,30 //Общая сумма окон 18477,90 //Текст второй строки Цвет : белый Остекление: 2 x 4/12/4/12/4 Фурнитура: 1 x Глухое остекление 1 x ПО правый с микропровет. //Приспособления Погрузка 1.000 шт. 21,00 63,00 //Позиция 4 //Количество окон (шт) 55 шт. //Оконная конструкция Упаковка/гофрокартон //Размеры изделия (ВхШ) //цена окна 157,92 //Общая сумма окон 8685,60 //Текст второй строки //Приспособления //Позиция 5 //Количество окон (шт) 55 шт. //Оконная конструкция доп.средний прижим //Размеры изделия (ВхШ) //цена окна 157,50 //Общая сумма окон 8662,50 //Текст второй строки //Приспособления //Позиция 7 //Количество окон (шт) 1 шт. //Оконная конструкция Оконная конструкция - VEKA SOFT //Размеры изделия (ВхШ) 1880х2570 //цена окна 12489,12 //Общая сумма окон 12489,12 //Текст второй строки Цвет : белый Остекление: 5 x 4/12/4/12/4 Фурнитура: 4 x Глухое остекление 1 x ПО правый с микропровет. //Приспособления Погрузка 1.000 шт. 21,00 21,00 Подоконник WERZALIT 500 2.670 пгм 1860,18 4966,50 Замок-защел.с наж.гарнит 1.000 шт. 2328,90 2328,90 //Позиция 8 //Количество окон (шт) 1 шт. //Оконная конструкция Оконная конструкция - VEKA SOFT //Размеры изделия (ВхШ) 1880х2570 //цена окна 12489,12 //Общая сумма окон 12489,12 //Текст второй строки Цвет : белый Остекление: 5 x 4/12/4/12/4 Фурнитура: 4 x Глухое остекление 1 x ПО правый с микропровет. //Приспособления Погрузка 1.000 шт. 21,00 21,00 Подоконник WERZALIT 500 2.670 пгм 1860,18 4966,50 Замок-защел.с наж.гарнит 1.000 шт. 2328,90 2328,90 Откос ПВХ отделка 6.790 пгм 724,50 4919,46 //итого 660905,28 //сумма со скидкой 594814,92
Поля со знаками // являются ключевыми полями и называются «Тегами», на основе которых обработка будет ассоциировать данные из файла.
Теги вида:
//Номер заказа
//Дата заказа
//Фамилия
//Имя
//Позиция
//Количество
//Цена
//Итого
//Сумма со скидкой
- являются обязательными в содержании файла.
Итоговые суммы по товарам и услугам в файле не содержат в себе скидки, поэтому их итоговое значение будет уже рассчитываться при условии существования значения в Теге «Сумма со скидкой».
Пример формы обработки, закладка «Шапка счета».
Скрин №1
Описание полей формы:
- «Путь к файлу» - путь к файлу данных откуда нужно произвести импорт, по умолчанию всегда выбирается файлы с расширением «txt»;
- Кнопка «Проверка файла» проверка выбранного файла на корректность данных, на присутствие обязательных полей в файле;
- «Номер заказ» - импортируемый номер заказа из файла, будущий номер документа;
- «Дата счета» - дата на которую будет создан документ «Счет на оплату покупателю»;
- «Физ. Контрагент» - поле текстовое, строка из промежуточного файла содержащее сведение на кого был выписан счет, кнопки с право позволяют найти повторно соответствующее значение в справочнике «Контрагент» путем поиска по «Наименованию» или создать новую карточку справочника «Контрагента».
- «Контрагент» - ссылка на элемент справочника «Контрагенты», данный реквизит в этапе сверки и импорте данных заполняется соответствующей ссылкой найденной строки реквизита «Физ. Контрагент», но так же остается возможность выбора данного реквизита в ручную;
- «Адрес установки файл» - строка из файла, содержащая в себе адрес установки(доставки), кнопки с право позволяют найти повторно соответствующее значение в регистре сведений «Контактная информация» путем поиска по «Представлению» или создать новую запись об фактическом адресе контрагента. Новая запись создается только при заполненном реквизите «Контрагент»;
- «Адрес установки» - ссылка на запись в регистре сведений «Контактная информация», заполняется автоматически при удачном поиске и определении реквизита «Контрагент» и поиске по данному контрагенту указанного адреса в реквизите «Адрес установки файл»;
- «Телефон из файла» - - строка из файла, содержащая в себе контактный телефон, кнопки с право позволяют найти повторно соответствующее значение в регистре сведений «Контактная информация» путем поиска по «Представлению» или создать новую запись об контактном телефоне контрагента. Новая запись создается только при заполненном реквизите «Контрагент»;
- «Итого сумма» - сумма из файла определенна по тегу «Итого»;
- «Сумма со скидкой» - сумма из файла определенна по тегу «Сумма со скидкой»;
- «Контрольная сумма по табличной части» - сумма рассчитывается автоматически после заполнения табличной части колонки «Сумма» закладки «Табличная часть»;
- Кнопка «Импортировать данные» - по нажатию кнопки при правильно выбранном файле происходит чтение и заполнение реквизитов обработки на закладках «Шапка счета » и «Табличная часть»;
- Кнопка «Создать документ счет» - по нажатию кнопки происходит проверка правильности заполнения всех реквизитов, выводятся сообщения при отсутствии заполнения обязательных реквизитов и создается новый документ «Счет на оплату покупателю» на указанную дату и номер, сразу же открывается форма вновь созданного документа;
Пример формы обработки, закладка «Табличная часть»:
Скрин №2
Описание полей формы:
- Колонка «N» - номер по порядку;
- Колонка «Импорт» - определяет те действия по «Созданию номенклатуры» и «Вставки данной строки в счет» при корректности данных строки, по умолчанию на всех строках устанавливается галочка, если пользователи не нужно указывать какую-то услуги или товар загруженных из файла, то достаточно снять галочку;
- Колонка «Позиция» - текстовое поле товара/услуги как оно описано в файле;
- Колонка «Услуга» принимает значение «Истина»(галочка) если на ссылку колонки «Номенклатура» в свойствах элемента справочника «Номенклатура» установлена галочка «Услуга». Данный реквизит необходим так как в типовой форме счета существует две табличные части, одна на товары, вторая на услуги;
- Колонка «Номенклатуры» - ссылка на элемент справочника «Номенклатура», при импорте данных осуществляется поиск по «Наименованию» реквизита «Позиция» соответствующей строки в справочнике «Номенклатура», при удачном поиске значение заполняется соответствующей ссылкой, при неудачном остается пустым и является обязательным для заполнения;
- Колонка «Размер» - текстовое поле из файла содержащее в себе сведения по размерам текущей «Позиции»;
- Колонка «Ед.измерения позиции» - строка из файла, содержащая в себе единицу измерения позиции;
- Колонка «Ед.измерения номенклатуры» - ссылка на справочник «Классификатор единиц измерения» найденный по «Наименованию» строки колонки «Ед.измерения позиции», заполняется сразу если реквизит строки «Номенклатура» определен;
- Колонка «Количество» - число из файла содержащее в себе количество продукции;
- Колонка «Цена» - число из файла, содержащее в себе цену на одну единицу продукции;
- Колонка «Сумма» - число из файла, содержащее в себе сумму товара/услуги без учета скидки;
- Колонка «Сумма со скидкой» - число из файла, содержащее в себе сумму товара/услуги с учетом скидки;
Порядок работы с обработкой:
- Пользователь выбирает ранее сформированный файл для импорта;
- Нажимает кнопку «Проверка фала» - при корректности содержания фала система выдает сообщение «Выбранный файл подходит для импорта!» и кнопка «Импортировать данные» становится доступна, при отсутствии корректности выдается сообщение «Выбранный файл не предназначен для импорта!» и кнопка «Импортировать данные» становится не доступна;
- Пользователь нажимает кнопку «Импортировать данные» - система считывает содержимое файла и заполняет реквизиты на форме, ссылочные реквизиты вида «Контрагент», «Адрес установки», «Телефон», «Номенклатура» ищутся в информационной базе путем сопоставления по наименованию(тексту);
- После проведения импорта, пользователь оценивает корректность сопоставления загруженных данных с ранее существующими и выборочно делает варианты корректировок:
4.1. Выбирает вручную значения ссылочных данных;
4.2. Делает поправки в тексте и нажимает кнопку (Найти повторно), что бы найти соответствующее значение;
4.3. По кнопке создает по данным текстовых полей новые элементы справочников;
4.4. На закладке «Табличная часть» при необходимости снимает галочки с тех товаров/услуг которые не должны попасть в создаваемы счет;
4.5. На закладке «Табличная часть» при необходимости указывает значение реквизита «Номенклатура» вручную либо по кнопке по ранее отмеченным строкам колонки «Импортировать» создает автоматически новые карточки номенклатуры с установленным признаком «Услуга»;
4.6. При необходимости корректирует другие строки; - После проверки и корректировки результата импорта, нажимает кнопку и система проверяет правильность заполнения полей, выдает сообщения об ошибках, и при удачной проверке создает и записывает новый документ «Счет на оплату покупателю», по завершению открывается форма вновь созданного документа и пользователь может производить дальнейшие типовые действия над этим документом;