Имя: Пароль:
1C
1С v8
Работа с Дбф в клиент серверном варианте
0 Zoeh
 
02.10.19
09:56
&НаСервере
Функция Команда2НаСервере()
НашеИмяФайла= "PriceP.dbf";
НашПолныйПутьФайла = КаталогВременныхФайлов()+НашеИмяФайла;
БД.СоздатьФайл(НашПолныйПутьФайла);
АдресВХ = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(НашПолныйПутьФайла));
Возврат АдресВХ;
КонецФункции

&НаКлиенте
Процедура ПоКнВыгрузитьПрайс(Команда)
ФайлПриемник = ПолучитьИмяВременногоФайла("dbf"); //х.з. в инете нашел
Адрес = Команда2НаСервере();

ДанныеХранилища = ПолучитьИзВременногоХранилища(Адрес);
ДанныеХранилища.Записать(ИмяФайла);

{ВнешняяОбработка.ВыгрузкаВDBF.Форма.Форма.Форма(396)}: Ошибка при вызове конструктора (ДвоичныеДанные)
    АдресВХ = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(НашПолныйПутьФайла));
по причине:
Файл не обнаружен '/tmp/PriceP.dbf'
1 Zoeh
 
02.10.19
09:56
Дбфка создается вполне нормально
2 ДенисЧ
 
02.10.19
10:22
СоздатьФайл - файло ты создал. А зыписывать-то его кто будет?

БД.СоздатьФайл(НашПолныйПутьФайла);
бд.ЗакрытьФайл()
АдресВХ = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(НашПолныйПутьФайла));
3 Zoeh
 
02.10.19
10:23
само собой бфка ниже заполняется и записывается
БД.СоздатьФайл(НашПолныйПутьФайла);
Цикл
БД.Добавить()
**заполняю
БД.Записать();
Конец
4 ДенисЧ
 
02.10.19
10:31
(3) Закрыть не забывай
5 Zoeh
 
02.10.19
10:32
(4)

*****
    БД.DatePrice = ТекущаяДата();
        БД.Записать();
    КонецЦикла;
    БД.Записать();
    БД.ЗакрытьФайл();
    
    //ПолучитьИзВременногоХранилища(врПутьКФайлу).Записать(ИмяФайла);
    //Возврат ПолучитьИзВременногоХранилища(ПолучитьИмяВременногоФайла(врПутьКФайлу));
    //Возврат ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(НашПолныйПутьФайла), УникальныйИдентификатор);
    //Возврат ПоместитьВоВременноеХранилище(БД, УникальныйИдентификатор);
    //ПоместитьФайл(Ф,НашПолныйПутьФайла, ,Ложь);
    //НачатьПомещениеФайла(,Ф,НашПолныйПутьФайла,Ложь);
    //ПоместитьФайл(Ф, "", НашПолныйПутьФайла, Ложь) ;
    //Возврат ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(НашПолныйПутьФайла), Ф);
    //Двоичное=Новый ДвоичныеДанные(НашПолныйПутьФайла);
    //Адрес=ПоместитьВоВременноеХранилище(Двоичное,ЭтаФорма.УникальныйИдентификатор);
    //УдалитьФайлы(НашПолныйПутьФайла, "");
    АдресВХ = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(НашПолныйПутьФайла));
    
    Возврат АдресВХ;
6 Zoeh
 
02.10.19
17:20
UP
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс