Установите обязательный атрибут для столбца в PowerBuilder

Я хочу отключить необходимое поведение для столбца в PowerBuilder DataWindow, v10.2. Столбец базы данных может иметь значение NULL, но я получаю сообщение «Необходимое значение отсутствует...», если значение не указано для столбца при добавлении.


person Pete Yankovich    schedule 14.01.2014    source источник


Ответы (1)


На панели «Свойства» для столбца на вкладке «Правка» есть атрибут «Обязательный». Это то, что вам нужно.

Удачи,

Терри.

person Terry    schedule 14.01.2014
comment
Столбец является флажком, а требуемый флаг отсутствует на вкладке «Изменить свойства». Можно ли это установить в скрипте? - person Pete Yankovich; 14.01.2014
comment
Да, оно может. Если вам повезет, вы сможете найти что-то вроде dw.Modify (‹colname›.Edit.Required). Если вы используете фреймворк (например, PFC), поиск источника может быть более тупым. Просто дополнительно, чтобы дважды проверить это сообщение, инициированное атрибутом Required, в отладчике я бы открыл QuickWatch и оценил буфер обмена (dw.Describe('datawindow.syntax')), вставил синтаксис в текстовый редактор и убедитесь, что для столбца установлен этот атрибут. (::Clipboard... при вызове из сценария DW, IIRC) - person Terry; 14.01.2014
comment
К сведению: параметр edit.required преобразует столбец из флажка в поле редактирования. Решение для меня состояло в том, чтобы установить для столбца значение по умолчанию в postinsert, чтобы избежать ошибки проверки. - person Pete Yankovich; 15.01.2014
comment
О, флажок! Я думаю, что они очень нужны. Лучший способ справиться с этим — установить атрибут Initial Value для столбца на панели «Спецификация столбца» в художнике DW. Выполнение Set...() скриптом пометит статус строки как измененный; столбцы с начальным значением не будут иметь измененного статуса до тех пор, пока столбец не будет отредактирован. - person Terry; 20.01.2014