Код:
Процедура ЗалитьУкрПоц()
Перем Контрагент;
ТЗ=СоздатьОбъект("ТаблицаЗначений");
ТЗ.НоваяКолонка("ПрихРасх", "Число", 1, 0);
ТЗ.НоваяКолонка("Клн", "Справочник.Контрагенты");
ТЗ.НоваяКолонка("НомДок", "Строка", 30);
ТЗ.НоваяКолонка("СумСНДС", "Число", 15, 2);
ТЗ.НоваяКолонка("Содерж", "Строка", 100);
тзФайлы = создатьобъект("таблицазначений");
тзФайлы.НоваяКолонка("имя",,,,"Имя файла",45);
тзФайлы.НоваяКолонка("дата",,,,"Дата выиски",15);
тзФайлы.НоваяКолонка("Счет",,,,"Расчетный счет",15);
тзФайлы.НоваяКолонка("МФО",,,,"МФО",15);
тзФайлы.НоваяКолонка("Банк",,,,"Банк",15);
Путь=СокрЛП(Константа.ПутьКФайлуУкрСоц);
ФС.УстТекКаталог(Путь);
текИмяФ=ФС.НайтиПервыйФайл("*.dbf");
Пока пустоезначение(текИмяФ)=0 Цикл
тзФайлы.НоваяСтрока();
тзФайлы.имя = сокрлп(Путь+текИмяФ);
текИмяФ=ФС.НайтиСледующийФайл();
КонецЦикла;
ИмяФайла = "";
номСтрокиФайла = "";
Если тзФайлы.ВыбратьСтроку(номСтрокиФайла,"Выберите файл выписки для загрузки")=0 Тогда
возврат;
КонецЕсли;
ИмяФайла=тзФайлы.ПолучитьЗначение(номСтрокиФайла,1);
Вып=СоздатьОбъект("XBase");
Вып.ОткрытьФайл(ИмяФайла);
Вып.Первая();
Пока Вып.ВКонце()=0 Цикл
Если Вып.DATA<>ДатаДок Тогда
Вып.Следующая();
Продолжить;
КонецЕсли;
Если Число(Вып.KL_OKP)<>Число(Константа.БазФирма.ЕДРПОУ) Тогда
Вып.Следующая();
Продолжить;
КонецЕсли;
ТЗ.НоваяСтрока();
Если Вып.DK=1 Тогда
ТЗ.ПрихРасх=-1;
Иначе
ТЗ.ПрихРасх=1;
КонецЕсли;
ОпределениеКонтрагента(Вып.KL_OKP_K,"",Контрагент);
ТЗ.Клн=Контрагент;
ТЗ.НомДок=Вып.ND;
ТЗ.СумСНДС=Вып.S;
ТЗ.Содерж=ANSItoOEM(Вып.N_P);
Вып.Следующая();
КонецЦикла;
ТЗ.Сортировать("ПрихРасх, СумСНДС");
ТЗ.ВыбратьСтроки();
Пока ТЗ.ПолучитьСтроку()=1 Цикл
НоваяСтрока();
ПриходРасход=?(ТЗ.ПрихРасх=-1, Перечисление.ПлюсМинус.Минус, Перечисление.ПлюсМинус.Плюс);
ИзмПриходРасход();
НомерДокумента=ТЗ.НомДок;
ИзмСчет();
Субконто=ТЗ.Клн;
СуммаСНДС=ТЗ.СумСНДС;
ИзмСуммаСНДС();
Содержание=ТЗ.Содерж;
КонецЦикла;
КонецПроцедуры
//================================================== ===========================
Социальные закладки