Имя: Пароль:
1C
1C 7.7
v7: Выгрузка в дбф.вместо строки цифры
0 serg-lom89
 
08.04.13
13:16
Выгружаю в дбф документ
Проблема в том что в отладике видит наименование Контрагента и договор а вот когда открываем ДБФ то там только цифры?
Подскажите что не так пожалуйста?
   ДБФ=СоздатьОбъект("XBase");
   
   ДБФ.КодоваяСтраница(0);
   ДБФ.ДобавитьПоле("NomDok", "N", 10, 0);
   ДБФ.ДобавитьПоле("DataDok","D", 8, 0);
//    ДБФ.ДобавитьПоле("KodKontr", "N", 10, 0);
   ДБФ.ДобавитьПоле("KOntragent", "S",50,0);
   ДБФ.ДобавитьПоле("Dogovor", "S",60,0);
   ДБФ.СоздатьФайл(ИмяФайла);
   ДБФ.ОчиститьФайл();
   Док=СоздатьОбъект("мой документ");
   Док.ВыбратьДокументы(НачДата,КонДата);
   Док.УстановитьФильтр(1,0);
   Пока Док.ПолучитьДокумент() > 0 Цикл
       ДБФ.Добавить();        
       ДБФ.NomDok=Док.НомерДок;    
       ДБФ.DataDok=Док.ДатаДок;    
   //    ДБФ.KodKontr=Док.Контрагент.Код;
       ДБФ.KOntragent=Док.Контрагент;    
       ДБФ.Dogovor=Док.Договор;    
       ДБФ.Записать();    
   КонецЦикла;
   ДБФ.ЗакрытьФайл();
1 ДенисЧ
 
08.04.13
13:18
.Наименование
Или СокрЛП()
2 vladmenleo
 
08.04.13
13:18
Приведи явно к строке так например
ДБФ.KOntragent=СокрЛП(Док.Контрагент);    
        ДБФ.Dogovor=СокрЛП(Док.Договор);
3 dk
 
08.04.13
13:20
пора уже начать отличать ссылки от чисел и строк
ДБФ.KOntragent=Док.Контрагент.Наименование;
ДБФ.Dogovor=Док.Договор.Наименование;
---
на крайний случай
ДБФ.KOntragent=СокрЛП(Док.Контрагент);
ДБФ.Dogovor=СокрЛП(Док.Договор.Наименование);
4 dk
 
08.04.13
13:20
(1) шустрый
5 serg-lom89
 
08.04.13
13:23
Спасибо)))))))))
6 Dolly_EV
 
09.04.13
08:18
хммм.. помнится, в таком случае 1С сама неявно приводит к типу "Строка".. не?
7 cw014
 
09.04.13
08:23
(6) Приводит только когда сталкивается с типом 1С "Строка". В ином случае пихает идентификатор
8 ДенисЧ
 
09.04.13
08:43
(6) с какого воща она в дбф будет что-то приводить?
9 Dolly_EV
 
09.04.13
09:08
ну типа увидела в описании поля ДБФ.ДобавитьПоле("KOntragent", "S",50,0); букву "S" :-))))))
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.