Имя: Пароль:
1C
1C 7.7
v7: DBF: записать пустое значение в числовое поле
,
0 dondnepr
 
11.04.16
11:43
Доброго дня!
Имеется обработка, формирующая ДБФ-файл. Одно из полей имеет числовой тип: БД.ДобавитьПоле("REZBORG",1,18,5);
Возможно ли штатными средствами 1с7 записать в это поле пустое значение? Если делать БД.REZBORG = "", то при БД.Записать() там всё-равно будет 0. Изменять структуру поля на строку запрещено. В данный момент заказчик затирает нули в ручном режиме после выполнения обработки. Спасибо!
1 Масянька
 
11.04.16
11:45
(0) Бред какой-то...
А чем нули мешают?
2 ДенисЧ
 
11.04.16
11:47
в дбф в числовом поле не моет быть ничего, кроме чисел.
меняй постановку задачи
3 dondnepr
 
11.04.16
11:47
Не знаю. Там какая-то сложная финансовая программа, которая обрабатывает полученный файл далее, и потому "структуру менять никак нельзя" (с)
4 Масянька
 
11.04.16
11:48
(3) А в чем заказчик нули затирает?
5 dondnepr
 
11.04.16
11:49
(2) Ответ заказчика - "ну мы же вручную убираем нули из числового поля, и всё получается"
6 Woldemar177
 
11.04.16
11:50
А если просто тупо в это поле ничего не писать?
7 dondnepr
 
11.04.16
11:50
(4) DBFViewer 2000 V1.81
8 Масянька
 
11.04.16
11:50
(5) Как они нули убирают? В каком редакторе/программе?
9 ДенисЧ
 
11.04.16
11:50
(5) Тогда нужно терзать заказчика на предмет, куда они потом затёртые данные сохраняют.
Ибо терзают меня смутные сомнения... (с)
10 aka AMIGO
 
11.04.16
11:51
А заменить тип поля на строковый нельзя?
11 Масянька
 
11.04.16
11:52
(7) А точно нули убираются?
(10) Низя, см. (0), (3).
12 Маратыч
 
11.04.16
11:52
(6) Кстати, вариант "ничего не писать в поле" вроде как работает c dBase IV. Кто бы еще проверил...
13 aka AMIGO
 
11.04.16
11:52
(11) Ааа.. "Всё не читал, но.." © :)
14 dondnepr
 
11.04.16
11:53
(11) Да, я проверял
15 Масянька
 
11.04.16
11:53
(14) Чем проверял?
16 dondnepr
 
11.04.16
11:54
(15) см. (7)
17 Масянька
 
11.04.16
11:54
(12) Нет. С 4-ой версии - не заполненное цифровое заполняется 0.
18 Масянька
 
11.04.16
11:55
(16) А другим редактором?
19 Абыр
 
11.04.16
11:55
(0) Покладите куда-нибудь примеры файла с нулями и без
20 Масянька
 
11.04.16
11:55
(19) Во, точно.
21 dondnepr
 
11.04.16
11:56
(19) Хорошо, щас сформирую
22 dondnepr
 
11.04.16
12:05
23 Масянька
 
11.04.16
12:08
(22) Разочарую тебя - есть там нули...
Извини (если что).
24 dondnepr
 
11.04.16
12:11
(23) Их видно, если открывать другим редактором?
25 dondnepr
 
11.04.16
12:16
(24) Собственно да, сам открыл WinDBFView и убедился.
Получается, что всё это фикция, и (9) прав.
Всем спасибо!
26 oslokot
 
11.04.16
12:17
Забавно, нет нулей (Far+LookDBF).
27 Масянька
 
11.04.16
12:19
(26) Суслик? :)
28 oslokot
 
11.04.16
12:25
29 Абыр
 
11.04.16
12:26
нет там нулей, там пробелы. сравните бинарно

(0) вот такой простой код

ДБФ = СоздатьОбъект("XBase");
ДБФ.ДобавитьПоле("REZBORG", 1, 18, 5);
ДБФ.СоздатьФайл("d:\test.dbf");
ДБФ.Добавить();
ДБФ.Записать();
ДБФ.ЗакрытьФайл();

дает файл без нулей
у вас откуда изначально dbf берется? в 7.7 генерится?
30 dondnepr
 
11.04.16
12:30
(29) Да, в 7.7, 25-ая платформа
31 dondnepr
 
11.04.16
12:38
(29) Хм, действительно, если убрать запись чего-либо в поле REZBORG, то на выходе при просмотре DBFViewer идет пустая строка; если же открыть WinDBFView, то он показывает нули.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший