Непонятности с форматом поля

  • Автор темы Sandro
  • Дата начала
S

Sandro

#1
Натолкнулся на такой (на мой не опытный взгляд) глюк. Проблема в следующем есть документ который заполняется данными через ODBC, сначала заполняется поле со списком , потом человек делает выбор и загружает остальные данные, сохраняет документ.
Большее количество полей это суммы (Number,Editable,Currency) настройки формата пользовательские. Всё прекрасно работает.
при сохранении поля заполняются вида: 88892.00р.
Возникла потребность сделать операцию обновляющую все заведённые документы, нет проблем беру ту же операцию что в документе загоняю в цикл, всё отлично заполняется. Звонит народ, не сортируются во вьюшках данные, вернее сортируются но как текст. Смотрю все поля с суммами заполнены в виде: 88892.
Вхожу в режим редактирования, меняю чё нить, сохраняю документ, все поля снова становятся в формат :88892.00р.

Как выйти из этой ситуации ? Наверняка кто то уже сталкивался
 
Y

Yakov

#2
Возможно, что данные из РСУБД в Notes-поле пишутся как текст. В случае одного документа, как я понял, документ сохраняется из UI. Лотус использует информацию о поле (Number,Editable,Currency) и преобразует текст в число. В случае пакетной обработки многих документов данные сохраняются как текст.
Возможное решение - явное приведение полученных из РСУБД данных к числовому виду:
Код:
Call document.replaceItemValue("Price", Cdbl(odbcResultSet.GetValue("PRICE"))
 
S

Sandro

#3
Так я пробовал, не получается , делаю val() при записи в поле, пишет "Item %1 is not of type Textspecial type not set"
 
S

Sandro

#5
Ykov, спасиб но это я тупень ))) Копи-паст код не досмотрел у меня в конце вставлялось значение
Call item.AppendToTextList(ist_obsl)