Текст функции загрузки представлен ниже. Функцию надо скопировать в конфигураторе: БухгалтерияПредприятия - правой кнопкой мыши (для не 1С-овцев пишу) - Открыть модуль внешнего соединения.
Функция Import2(ИНН, Наименование, Сумма, СуммаНДС , НомерСчета, ДатаСчета, ПН, Группа) Экспорт
ИНН = Строка(ИНН);
ИНН2 = "00000000";
КПП="000000000";
p = Найти(ИНН, "\") ;
Если p > 1 Тогда
ИНН2 = Лев(ИНН, p - 1);
КПП = Сред(ИНН, p + 1);
Иначе
ИНН2 = Лев(ИНН, 12);
КПП = "";
КонецЕсли;
Спр1=Справочники.Контрагенты.НайтиПоКоду("000000001");
//
Если (Группа="A") или (Группа="B") или (Группа="G") или (Группа="H") Тогда
СпрВД = Справочники.Номенклатура.НайтиПоКоду("00000000547");
ИначеЕсли Группа="C" Тогда
СпрВД = Справочники.Номенклатура.НайтиПоКоду("00000000545");
ИначеЕсли Группа="F" Тогда
СпрВД = Справочники.Номенклатура.НайтиПоКоду("00000000544");
КонецЕсли;
Если Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", ИНН2) = 0 Тогда
СпрКонтр=Справочники.Контрагенты.СоздатьЭлемент();
СпрКонтр.ИНН = ИНН2;
СпрКонтр.КПП = КПП;
СпрКонтр.Родитель=Спр1.ТекущийЭлемент();
СпрКонтр.Наименование=Наименование;
СпрКонтр.НаименованиеПолное=ПН;
СпрКонтр.ЮрФизЛицо=Перечисления.ЮрФизЛицо.ЮрЛицо;
Попытка
СпрКонтр.Записать();
Исключение
КонецПопытки;
Иначе
СпрКонтр1 = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", ИНН2);
Запрос = Новый Запрос;
Запрос.Текст=
"ВЫБРАТЬ
| Контрагенты.Ссылка как контрагент
|ИЗ
| Справочник.Контрагенты КАК Контрагенты
|ГДЕ
| Контрагенты.ИНН = &ВыбИНН
| И Контрагенты.КПП = &ВыбКПП" ;
Запрос.УстановитьПараметр("ВыбИНН",ИНН2);
Запрос.УстановитьПараметр("ВыбКПП",КПП);
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
СпрКонтр1 = Выборка.Контрагент;
КонецЦикла;
Попытка
СпрКонтр =СпрКонтр1.ПолучитьОбъект();
СпрКонтр.Наименование = Наименование;
СпрКонтр.НаименованиеПолное = ПН;
СпрКонтр.ИНН = ИНН2; //Запись полного ИНН\КПП
СпрКонтр.КПП = КПП;
Попытка
СпрКонтр.Записать();
Исключение
КонецПопытки;
Исключение
КонецПопытки;
КонецЕсли;
//
//Иначе
// СпрКонтр = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", ИНН2);
// СпрКонтр.Наименование=Наименование;
// СпрКонтр.НаименованиеПолное=ПН;
// СтарыйСпр=СпрКонтр.ТекущийЭлемент();
// Попытка
// СпрКонтр.Записать();
// Исключение
// Предупреждение("Контрагент "+Наименование +" не записан!");
// КонецПопытки;
//КонецЕсли;
Док=Документы.РеализацияТоваровУслуг.СоздатьДокумент();
СтавкаНДС=Перечисления.СтавкиНДС.НДС18;
СтавкаНДС10=Перечисления.СтавкиНДС.НДС10;
Док.Комментарий=ИНН2;
//Проверить коды номенклатуры
Если (Группа="A") или (Группа="B") Тогда
ВД = Справочники.Номенклатура.НайтиПоКоду("00000000547");
ИначеЕсли Группа="C" Тогда
ВД = Справочники.Номенклатура.НайтиПоКоду("00000000545");
ИначеЕсли Группа="F" Тогда
ВД = Справочники.Номенклатура.НайтиПоКоду("00000000544");
КонецЕсли;
Док.Дата= СокрЛП(ДатаСчета)+" 0:00:00";
Док.Номер=СокрЛП(НомерСчета);
Док.Организация=Справочники.Организации.НайтиПоКоду("000000002");
Док.ТипЦен=Справочники.ТипыЦенНоменклатуры.НайтиПоКоду("000000001");
Док.ВалютаДокумента = Справочники.Валюты.НайтиПоКоду("643");
Док.Контрагент=СпрКонтр.Ссылка;
УправлениеВзаиморасчетами.УстановитьДоговорКонтрагента(Док.ДоговорКонтрагента,
Док.Контрагент,
Док.Организация,,);
Док.СпособЗачетаАвансов = Перечисления.СпособыЗачетаАвансов.Автоматически;
Док.СчетУчетаРасчетовСКонтрагентом = ПланыСчетов.Хозрасчетный.РасчетыСПокупателями;
Док.СчетУчетаРасчетовПоАвансам = Планысчетов.Хозрасчетный.РасчетыПоАвансамПолученным;
Док.СуммаВключаетНДС = Истина;
НовСтрока = Док.Услуги.Добавить();
НовСтрока.Номенклатура = ВД;
НовСтрока.Содержание = ВД;
СчетаУчета = БухгалтерскийУчет.ПолучитьСчетаУчетаНоменклатуры(Док.Организация, НовСтрока.Номенклатура, );
НовСтрока.СчетДоходов = СчетаУчета.СчетДоходов;
НовСтрока.СчетРасходов = СчетаУчета.СчетРасходов;
НовСтрока.СчетУчетаНДСПоРеализации = СчетаУчета.СчетУчетаНДСПродажи;
Если НовСтрока.СчетДоходов.ВидыСубконто.Количество() > 0 Тогда
НовСтрока.Субконто = Новый(НовСтрока.СчетДоходов.ВидыСубконто[0].ВидСубконто.ТипЗначения.Типы()[0]);
Если ТипЗнч(НовСтрока.Субконто) = Тип("СправочникСсылка.НоменклатурныеГруппы") Тогда
НовСтрока.Субконто = НовСтрока.Номенклатура.НоменклатурнаяГруппа;
КонецЕсли;
Иначе
НовСтрока.Субконто = Неопределено;
КонецЕсли;
НовСтрока.Количество=1;
НовСтрока.Цена=Сумма;
НовСтрока.Сумма=Сумма;
НовСтрока.СуммаНДС=СуммаНДС;
Если Группа="F" Тогда
НовСтрока.СтавкаНДС = СтавкаНДС10;
Иначе
НовСтрока.СтавкаНДС = СтавкаНДС;
КонецЕсли;
Попытка
Док.Записать();
Исключение
Сообщить("Документ уже выгружался!!!");
КонецПопытки;
Сф=Документы.СчетФактураВыданный.СоздатьДокумент();
Попытка
СФ.Заполнить(Док.Ссылка);
СФ.Номер=СокрЛП(НомерСчета);
СФ.Записать();
Исключение
КонецПопытки;
Возврат 1;
КонецФункции