Загрузка информации в 1С (форматы файлов загрузки)
24.08.2001
12:59
#1
Необходимо переместить некоторый объем информации из некой программы оперативного учета в 1С:Бухгалтерию. Как должны выглядеть данные в TXT-шном файле, чтобы попасть в нужное место в 1С???????
30.08.2001
13:25
#2
Все зависит от того какие данные вы хотите переместить. Думаю лучше использовать не txt-файлы, а dbf. Скорее всего вам понадобится хороший программист, т.к. это не простая задача.
07.09.2001
10:06
#3
"да нет, это не так уж и сложно...вот например, загрузка справочника из текстового файла (пусть код немного корявый, зато работает исправно):
//////////////////////////////////////////////////// //////////////
Процедура ЭкспортР()
Рез=Вопрос("Провести обновление РЕЕСТРА?" + РазделительСтрок + "ПРЕДУПРЕЖДЕНИЕ: это займет несколько минут......",1);
Если Рез=1 Тогда
Состояние("Открытие справочника");
aaaa=0;
Спр=СоздатьОбъект("Справочник.Номенклатура");
Текст=СоздатьОбъект("Текст");
Текст.Открыть("xls.txt");
Для Ном=2 По Текст.КоличествоСтрок() Цикл
Стр=Текст.ПолучитьСтроку(Ном);
Поле=0;
Пока СтрДлина(Стр)>0 Цикл
Поле=Поле+1;
Инд=Найти(Стр,СимволТабуляции);
Если Инд>0 Тогда
Стр1=Сред(Стр,1,Инд-1);
Стр=Сред(Стр,Инд+1);
Иначе
Стр1=Сред(Стр,2,(СтрДлина(Стр)-2));
Стр="""";
КонецЕсли;
Если Поле=1 Тогда
Спр.ПорядокКодов();
Спр.ВыбратьЭлементы();
aaaa=0;
Пока Спр.ПолучитьЭлемент()>0 Цикл
Состояние("Проводится поиск позиции " + Стр1 +" в текущем реестре");
Если Спр.Код=Стр1 Тогда
goto ~M1;
КонецЕсли;
aaaa=aaaa+1;
КонецЦикла;
Спр.Новый();
Спр.Код=Стр1;
ИначеЕсли Поле=2 Тогда
Спр.Наименование=Стр1;
ИначеЕсли Поле=3 Тогда
Спр.Наименование=Спр.Наименование + " " + Стр1;
//Спр.Вид=Стр1;
ИначеЕсли Поле=4 Тогда
Спр.Цена=Стр1;
ИначеЕсли Поле=5 Тогда
ИначеЕсли Поле=6 Тогда
Стр="""";
КонецЕсли;
~M1: КонецЦикла;
Состояние("Обрабатывается "+ Ном +" позиция экспортируемого реестра из "+Текст.КоличествоСтрок());
Спр.Записать();
КонецЦикла;
КонецЕсли;
КонецПроцедуры "
////////////////////////////////////////////////////
Процедура ЭкспортР()
Рез=Вопрос("Провести обновление РЕЕСТРА?" + РазделительСтрок + "ПРЕДУПРЕЖДЕНИЕ: это займет несколько минут......",1);
Если Рез=1 Тогда
Состояние("Открытие справочника");
aaaa=0;
Спр=СоздатьОбъект("Справочник.Номенклатура");
Текст=СоздатьОбъект("Текст");
Текст.Открыть("xls.txt");
Для Ном=2 По Текст.КоличествоСтрок() Цикл
Стр=Текст.ПолучитьСтроку(Ном);
Поле=0;
Пока СтрДлина(Стр)>0 Цикл
Поле=Поле+1;
Инд=Найти(Стр,СимволТабуляции);
Если Инд>0 Тогда
Стр1=Сред(Стр,1,Инд-1);
Стр=Сред(Стр,Инд+1);
Иначе
Стр1=Сред(Стр,2,(СтрДлина(Стр)-2));
Стр="""";
КонецЕсли;
Если Поле=1 Тогда
Спр.ПорядокКодов();
Спр.ВыбратьЭлементы();
aaaa=0;
Пока Спр.ПолучитьЭлемент()>0 Цикл
Состояние("Проводится поиск позиции " + Стр1 +" в текущем реестре");
Если Спр.Код=Стр1 Тогда
goto ~M1;
КонецЕсли;
aaaa=aaaa+1;
КонецЦикла;
Спр.Новый();
Спр.Код=Стр1;
ИначеЕсли Поле=2 Тогда
Спр.Наименование=Стр1;
ИначеЕсли Поле=3 Тогда
Спр.Наименование=Спр.Наименование + " " + Стр1;
//Спр.Вид=Стр1;
ИначеЕсли Поле=4 Тогда
Спр.Цена=Стр1;
ИначеЕсли Поле=5 Тогда
ИначеЕсли Поле=6 Тогда
Стр="""";
КонецЕсли;
~M1: КонецЦикла;
Состояние("Обрабатывается "+ Ном +" позиция экспортируемого реестра из "+Текст.КоличествоСтрок());
Спр.Записать();
КонецЦикла;
КонецЕсли;
КонецПроцедуры "
Прайс-лист:из 1С бухгалтерии версии 6.0 в Microsoft Excel либо Microsoft WordПеренос проводок из "Зарплата и кадры" в "Бюджет"
Читают тему
(гостей: 1)