Форум: "Начинающим";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];
ВнизСделать Lookup - поле.... Найти похожие ветки
← →
STX (2006-08-05 01:41) [0]В НД есть поля АДРЕС | ДОМ | КВАРТИРА. А как их вывести в таблицу в одном поле?
Создавать отдельное поле в НД нет надобности...
← →
STX (2006-08-05 11:05) [1]Ребят, кто-нибудь, подскажите.
какое в табл. добавить поле (только для отображения), объединяющее 3 других в этой же строке
← →
Leonid Troyanovsky © (2006-08-05 11:16) [2]
> STX (05.08.06 11:05) [1]
> какое в табл. добавить поле (только для отображения), объединяющее
> 3 других в этой же строке
Добавь к датасету calculated field.
--
Regards, LVT.
← →
STX (2006-08-05 12:49) [3]Уже добавлял. В свойстве OnGetText все нужной объединяется и показывается. Только есть проблема - при добавлении новой записи выдает ошибку: невозможно преобразовать NULL в STRING и прога зависает.
← →
STX (2006-08-05 13:03) [4]В процедуру OnGetText добавил проверку наличия значения в полях и если = NULL то EXIT.
Верное ли это решение???? Может есть более правильное?
← →
Leonid Troyanovsky © (2006-08-05 13:09) [5]
> STX (05.08.06 12:49) [3]
> записи выдает ошибку: невозможно преобразовать NULL в STRING
> и прога зависает.
Покажи строку объединения.
--
Regards, LVT.
← →
STX (2006-08-05 14:20) [6]
procedure TDModule.dtOrdersLookUpAddressFromGetText(Sender: TField; var Text: String; DisplayText: Boolean);
begin
with dtOrders do begin
if NOT FieldByName("STREET").IsNull then text := FieldValues["STREET"];
if NOT FieldByName("HOUSE").IsNull then text:= text + " "+ FieldValues["HOUSE"];
if NOT FieldByName("APART").IsNull then text:= text + " êâ."+ FieldValues["APART"];
end;//with dtOrders
end;
Такой вариант решения верный ?????
← →
STX (2006-08-05 14:20) [7]
procedure TDModule.dtOrdersLookUpAddressFromGetText(Sender: TField; var Text: String; DisplayText: Boolean);
begin
with dtOrders do begin
if NOT FieldByName("STREET").IsNull then text := FieldValues["STREET"];
if NOT FieldByName("HOUSE").IsNull then text:= text + " "+ FieldValues["HOUSE"];
if NOT FieldByName("APART").IsNull then text:= text + " кв."+ FieldValues["APART"];
end;//with dtOrders
end;
Такой вариант решения верный ?????
← →
Leonid Troyanovsky © (2006-08-05 15:02) [8]
> STX (05.08.06 14:20) [7]
> Такой вариант решения верный ?????
Ну, а почему бы и нет?
Хотя, проще б было создать экземпляры требуемых полей
с помощью Fields Editor, а сцеплять их простым
Text := dtOrdersSTREET.AsString + ".."+ dtOrdersHOUSE.AsString + ..
--
Regards, LVT.
← →
Megabyte © (2006-08-06 11:16) [9]А не проще ли изменить запрос и сделать конкатенацию строк: (поле1 || поле2 || поле3) as Мегаполе? Или я вопрос не так понял?
← →
Leonid Troyanovsky © (2006-08-06 11:26) [10]
> Megabyte © (06.08.06 11:16) [9]
> А не проще ли изменить запрос и сделать конкатенацию строк:
> (поле1 || поле2 ||
На клиенте оформатировать вывод проще, возможности шире.
--
Regards, LVT.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.039 c