Подскажите,плиз,как сделать выгрузку в файл *.ТХТ по данным Реализации из 1С 7.7
Подскажите,плиз,как сделать выгрузку в файл *.ТХТ по данным Реализации из 1С 7.7 "Бухгалтерский учет редакция 4.5"
Нужно для обмена с сторонней программой.
Причем форма для "Торговли+склад" имеется и нормально выгружает в файл вида(там выборка идет по реал=СоздатьОбъект("Документ.Реализация"); ):
Номер/ДатаНакл:0000000007#27.01.2005
КлиентНазвание:"ООО ПО Корф"
АдресЮридич:Москва, Профсоюзная, д. 125
ИНН/КПП:7745123564#774521365
ВсегоПоНакладной:5995
Строка:1#2#Ожидание#11#101#1111#169.47#Готовые изделия#товар#шт#41#
Строка:2#2#Погрузка#22#222#4884#0#Готовые изделия#товар#шт#41#
@@@
Номер/ДатаНакл:0000000001#02.08.2005
КлиентНазвание:"АВиС Моторс Лтд"
АдресЮридич:Московская область, Раменский р-н, Солнечная, д. 35
ИНН/КПП:7845235401#780012561
ВсегоПоНакладной:13412
Строка:1#2#доставка груза#1#9925.42#11712#1514.05#Готовые изделия#товар#шт#41#
Строка:2#2#Экспедирование#1#1440.68#1700#219.76#Готовые изделия#товар#шт#41#
@@@
Вопрос-по какому документу нужно вести обработку в "Бухгалтерский учет редакция 4.5"?
Если кто реально готов помочь форму вышлю.
Вот это работает для ТиС,что надо для Бухгалтерии..
Перем ИмяФ1;
Перем каталог;
Перем код;
// Функция возращает ИНН из переданной строки
//
Функция ПолучитьИНН(ИННКПП)
Если Найти(ИННКПП, "\") <> 0 Тогда
// найден разделитель
Возврат Лев(ИННКПП, Найти(ИННКПП, "\") - 1);
Иначе
Возврат СокрЛП(ИННКПП);
КонецЕсли;
КонецФункции // ПолучитьИНН()
// Функция возращает КПП из переданной строки
//
Функция ПолучитьКПП(ИННКПП)
Если Найти(ИННКПП, "\") <> 0 Тогда
// найден разделитель
Возврат Сред(ИННКПП, Найти(ИННКПП, "\") + 1);
Иначе
Возврат "";
КонецЕсли;
КонецФункции // ПолучитьКПП()
Процедура Сформировать()
Перем Запрос, ТекстЗапроса;
реал=СоздатьОбъект("Документ.Реализация");
/////////////////////////////////////////////////////
// Расходные накладные //
/////////////////////////////////////////////////////
текстРеализация ="";
//Создание объекта типа Запрос
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать1)
|Период с ВыбНачПериода по ВыбКонПериода;
|ТекущийДокумент = Документ.Реализация.ТекущийДокумент;
|ДатаДок = Документ.Реализация.ДатаДок;
|НомерДок = Документ.Реализация.НомерДок;
|Контрагент = Документ.Реализация.Контрагент;
|Сумма = Документ.Реализация.Сумма;
|СтавкаНДС = Документ.Реализация.СтавкаНДС;
|Функция СуммаСумма = Сумма(Сумма);
|Группировка ТекущийДокумент упорядочить по ТекущийДокумент.ДатаДок ;
|"//}}ЗАПРОС
;
// Если ошибка в запросе, то выход из процедуры
Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
КонецЕсли;
// Подготовка к заполнению выходных форм данными запроса
р=0;
н=0;
ИтСумма=0;
ИтНДС=0;
//реал=СоздатьОбъект("Документ.Реализация"); ///////////////
Текст=СоздатьОбъект("Текст");
Если ФС.СуществуетФайл(имяфайла1)=1 Тогда
Если Вопрос("Файл с таким именем существует . Переписать ?",1)=1 Тогда
Текст.открыть(имяфайла1);
Для ст=0 по Текст.КоличествоСтрок() Цикл
Текст.УдалитьСтроку(Текст.КоличествоСтрок());
КонецЦикла;
Текст.УдалитьСтроку(1);
Текст.УдалитьСтроку(1);
Текст.УдалитьСтроку(1);
Текст.УдалитьСтроку(1);
КонецЕсли;
Иначе
ФС. ПереименоватьФайл(КаталогИБ()+"\пустой.txt",имяфайла1,1);
Текст.открыть(имяфайла1);
КонецЕсли;
///////////////
реал=СоздатьОбъект("Документ.Реализация");
Пока Запрос.Группировка(1) = 1
Цикл
// Заполнение полей ТекущийДокумент
н=н+1;
ТекстРеализация= "Номер/ДатаНакл:"+СокрЛП(Запрос.НомерДок)+"#"+Формат(Запрос.ДатаДок,"ДДДММГГГГ"); //+"##x#0";
Текст.ДобавитьСтроку(ТекстРеализация);
ТекстРеализация="КлиентНазвание:"+СокрЛП(Запрос.Контрагент.ЮрФизЛицо.ПолнНаименование);//+"#"+СокрЛП(Запрос.Контрагент.Наименование);
Текст.ДобавитьСтроку(ТекстРеализация);
ТекстРеализация="АдресЮридич:"+СокрЛП(глПредставлениеАдреса(Запрос.Контрагент.ЮрФизЛицо.Юрадрес));
Текст.ДобавитьСтроку(ТекстРеализация);
ТекстРеализация="ИНН/КПП:"+СокрЛП(ПолучитьИНН(Запрос.Контрагент.ЮрФизЛицо.ИНН))+"#"+СокрЛП(ПолучитьКПП(Запрос.Контрагент.ЮрФизЛицо.ИНН));
Текст.ДобавитьСтроку(ТекстРеализация);
ТекстРеализация="ВсегоПоНакладной:"+сокрлп(Запрос.суммасумма);//+"#сколько строк в накладной?";
Текст.ДобавитьСтроку(ТекстРеализация);
кв=0;
//////////////////////////////
Если реал.НайтиДокумент(Запрос.ТекущийДокумент)=1 тогда
Реал.ВыбратьСтроки();
Пока реал.ПолучитьСтроку()=1 цикл
кв=кв+1;
// предупреждение(справ.артикул);
ТекстРеализация="Строка:"+кв+"#"+"2"+"#"+реал.номенклатура+"#"+реал.Количество+"#"+реал.Цена+"#"+реал.Сумма+"#"+реал.СуммаНДС+"#Готовые изделия"+"#товар#"+реал.Единица+"#41"+"#";
Текст.ДобавитьСтроку(ТекстРеализация);
Итсумма=ИтСумма+реал.Сумма;
ИтНДС=ИтНДС+ реал.СуммаНДС;
КонецЦикла;
КонецЕсли;
ТекстРеализация="@@@";
Текст.ДобавитьСтроку(ТекстРеализация);
КонецЦикла;
ТекстРеализация="===";
Текст.ДобавитьСтроку(ТекстРеализация);
шапка="Кодировка:WIN";
Текст.ВставитьСтроку(1,шапка);
шапка="ВсегоНакладных: "+н+" шт. ВсегоСуммаНакладных: "+ИтСумма+" руб. ВсегоСуммаНДС: "+ИтНДС+" руб.";
Текст.ВставитьСтроку(2,шапка);
шапка="За период:"+Формат(ВыбНачПериода,"ДДДММГГГГ")+"~"+Формат(ВыбКонПериода,"ДДДММГГГГ");
Текст.ВставитьСтроку(3,шапка);
шапка="-----------------------------------------------------";
Текст.ВставитьСтроку(4,шапка);
Текст.Записать(имяфайла1);
Текст.Показать("Реализация",имяфайла1);
КонецПроцедуры
//=================================================
//===============================================
Процедура выбрфайл1()
ИмяФайла= "*.txt";
каталог="";
ФС.ВыбратьФайл(0,имяФ1,каталог,"***** Выберите файл выгрузки в **** ","txt",);
имяфайла1=каталог+имяф1;
КонецПроцедуры
//=================
Процедура ПриОткрытии()
ВыбКонПериода=РабочаяДата();
ВыбНачПериода=РабочаяДата();
каталог=ВосстановитьЗначение("каталог");
ИмяФ1="pr"+СтрЗаменить(формат(ВыбконПериода,"ДДДММГГ"),".","")+".txt";
имяфайла1=каталог+имяф1;
КонецПроцедуры
Процедура ПриЗакрытии()
Сохранитьзначение("каталог",каталог);
Сохранитьзначение("Имяф",имяф1);
КонецПроцедуры
Вложений: 1
Примеры выгрузки в *.txt из 1с 7.7
1)Выгрузка из ТиС по Документ.Реализация: out_tis.ert работает
2)Выгрузка из Бухгалтерия по Документ.РасходнаяНакладная: out_buh.ert не работает!?!
У кого есть минутка посмотрите плиз,не пойму.файлы во вложении vigr_iz_1C.zip