Имя: Пароль:
1C
1С v8
Как открыть таблицу DBF на FTP
,
0 Azgerd
 
08.08.24
16:26
Здравствуйте! Подскажите как с FTP выгрузить содержимое DBF файла в таблицу значений ? До файла я добрался
Попытка
			
			Соединение = ПодключитьсяКFTPСерверу();
			//Соединение.УстановитьТекущийКаталог("/");
			НайденныеФайлы = Соединение.НайтиФайлы("/", "_USL_1C.DBF");
			Если НайденныеФайлы.Количество() > 0 Тогда
				Файл = НайденныеФайлы[0];
				ПутьБДШ = Файл.ПолноеИмя;
			КонецЕсли;	
			
			Сообщение = Новый СообщениеПользователю;
			Сообщение.Текст = "Соединение с FTP сервером установлено!";
			Сообщение.Сообщить(); 
		Исключение
			ТекстОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
			Сообщение = Новый СообщениеПользователю;
			Сообщение.Текст = ТекстОшибки;
			Сообщение.Сообщить();
			Возврат;
		КонецПопытки;


Как открыть этот файл и выгрузить в таблицу значений ?
1 Garykom
 
гуру
08.08.24
15:14
имхо недостаточно знаний пока у тебя
лучше пойти читать учебники или на курсы
3 Климов Сергей
 
08.08.24
15:38
4 Мультук
 
гуру
08.08.24
15:38
(0)

google:
1С FTP получить файл

https://helpme1s.ru/rabota-s-ftp-v-yazyke-1s-8-3-8-2-v-primerax

google:
1с dbf в таблицу значений

https://fastcode.im/Templates/6735/tabliczaznachenij-iz-dbf
5 Azgerd
 
08.08.24
16:07
(3), (4) Я может не совсем корректно задал вопрос... Я знаю как открыть файл DBF и выгрузить его в таблицу значений, но только на локальном или сетевом диске. Проблема в том, что конфигурация 1С лежит на арендованном сервере и подключение по RDP, доступ к файловой системе сервера ограничен вот я и спрашиваю нельзя ли открыть файл непосредственно на FTP, не копируя его на локальный диск ?

ТаблицаDBF = Новый Новый XBase;
ТаблицаDBF.ОткрытьФайл(ПутьКФайлу);

Вопрос в том что мне неоткуда получить ПутьКФайлу не скопировав файл с FTP на локальный диск.
6 Андрюха
 
08.08.24
16:17
(5) Нельзя. Можно попробовать смаппировать ftp диском через ftpuse, но не уверен что получится.
7 Климов Сергей
 
08.08.24
16:17
(5) Непосредственно на ftp dbf открыть, ИМХО, не получится.
В TEMP ведь доступ есть? Создайте временный файл, в него скопируйте. Потом удалите.
8 Azgerd
 
08.08.24
16:31
(7) Спасибо!
9 RVN
 
08.08.24
16:36
(5)
ИмяМоегоФайла = ПолучитьИмяВременногоФайла("dbf");
FTPСоединение.Получить([адрес на ФТП], ИмяМоегоФайла);

Ну а дальше делай с ним что хошь
10 Garykom
 
гуру
08.08.24
17:48
(9) в курсе что XBase 1С это не сможет открыть?
и ТС долго будет чесать репу
https://www.vdgb.ru/blog/zagruzka-dbf-fajlov-s-dlinoj-imeni-bolshe-8-simvolov/
11 RVN
 
08.08.24
20:33
(10) Мда. Про ограничение имени файла 8 символами я как-то подзабыл уже. (( Давно дело  XBase не имел.
12 craxx
 
08.08.24
20:56
(9) ИмяМоегоФайла = КаталогВременныхФайлов()+МоеИмя8Символов+".dbf";
FTPСоединение.Получить([адрес на ФТП], ИмяМоегоФайла);