Имя: Пароль:
1C
1C 7.7
v7: Работа с dbf
0 sung82
 
23.06.12
20:24
ТЗ.ВыбратьСтроки();
   ТЗ.Свернуть("Контрагент,УНН","СуммаНДС,ВсегоНДС");
   ТЗ.Сортировать("Контрагент");    
   ///
   Путь=КаталогИБ()+"Stat.dbf";
   //создание нового файла
   Файл=СоздатьОбъект("XBase");
   //добавление полей
   Файл.ДобавитьПоле("UNN","N",12,0);//УНН
   Файл.ДобавитьПоле("NAME","S",10,);//наименование    
   Файл.СоздатьФайл(Путь);    
   //добавление записи
   ТЗ.ВыбратьСтроки();
   Пока ТЗ.ПолучитьСтроку() = 1 Цикл
       Файл.Добавить();
       Файл.UNN = ТЗ.УНН;
       Файл.Name = ТЗ.Контрагент;        
       Файл.Записать();
   КонецЦикла;    
   Файл.ЗакрытьФайл();
Файл.Name = ТЗ.Контрагент; - вместо Наименования после выполнения Файл.Записать();  Файл.Name = числу
Помогите разобраться
1 SnarkHunter
 
23.06.12
20:28
Определение ТЗ приведи... Колонка Контрагент наверняка не имеет тип Строка...
2 ЧеловекДуши
 
23.06.12
20:29
>>> Файл.ДобавитьПоле("UNN","N",12,0);//УНН
>>> Файл.ДобавитьПоле("NAME","S",10,);//наименование  

Что такое УНН ?
Почему поле "NAME", содержит всего 10 символов?
3 ЧеловекДуши
 
23.06.12
20:31
+(0) Файл.Name = ТЗ.Контрагент;

Пиши так: Файл.Name = Строка(ТЗ.Контрагент);

А по сути, ты вообще что ожидаешь?
Что 1С сама тебе в 10 символов упакует элемент справочника :DDDD
4 sung82
 
23.06.12
20:34
Определение ТЗ приведи... Колонка Контрагент наверняка не имеет тип Строка...
ТЗ.Контрагент - Справочник
5 sung82
 
23.06.12
20:37
изменил определение "ТЗ.Контрагент" и все заработало БОЛЬШОЕ СПАСИБО
6 SnarkHunter
 
23.06.12
20:37
(4)Ну а чего ты хочешь тогда? В строковое поле пытаешься разместить агрегат, вот и результат... Если нужно наименование, то пиши ТЗ.Контрагент.Наименование
7 Эмбеддер
 
23.06.12
21:03
Строка(Контрагент) возвращает наименование, если основное представление в виде наименование и код, если в виде кода
8 andrewks
 
23.06.12
22:24
(7) она ещё и представление первого реквизита может возвращать
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан