Простенький интерфейс

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
hope
Местный житель
Сообщения: 1353
Зарегистрирован: 29 мар 2005, 17:49
Контактная информация:

Простенький интерфейс

Сообщение hope »

Добрый день, Всем!

Нужно сделать простой интерфейс. Что-то не получается :(

В приходной накдадной по CTRL+P печатаем накладную. Мне нужно из этой формы вызвать интерфейс, в котором нужно отредактировать 4 поля:
номер реестра - внешний атрибут к таблице KatSopr
влажность - внешний атрибут к таблице KatSopr
сорность - внешний атрибут к таблице KatSopr
назначение - стандартное назначение из накладной. (это делается чтобы бухгалтер не нажимал лишние кнопки, типа CTRL+ENTER... При выноске конфигуратором поля Назначения в Шапку накладной - работает медленнее - тоже не устраивает).

Из-за своего незнания сделала так: в верхнем окне показываю текущее значение поля Назначение - его нельзя отредактировать, в нижней панели выбираю новое Назначение. Беда в том, что у меня в панели курсор должен встать на текущее Назначение, а он не встает :((

Может кто поможет разобраться? Или как-то упростить этот интерфейс, или сделать грамотнее?

Заранее благодарю!


Первые три поля - у меня без проблем. А вот с назначением - беда.

INTERFACE VlSor_N 'Ввод влажности. сорности и назначения' (,,), CYAN;
SHOW AT (,,80,16);
CREATE VIEW
VAR z1, z2, z3 : Double; // номер реестра, влажность, сорность
z4:String; // текущее наименование назначения из накладной
! z5:Comp; // текущий KatSopr.cNazna
AS SELECT *
FROM KatNazna
;
PARAMETERS z1, z2, z3, z4, KatNazna.Nrec;

SCREEN scr1;
SHOW AT (,,,7)
TABLE KatNazna;
FIELDS
z1 : noProtect;
z2 : [5.2], noProtect;
z3 : [5.2], noProtect;
z4 : Protect;
BUTTONS
cmOk;

<<
Номер реестра .@@@@@@@

Влажность .@@@@@@@

Сорность .@@@@@@@ <. Ввод .>

Назначение .@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
>>
end; //Screen


PANEL Pnl2;
SHOW AT (,8,,15);
TABLE KatNazna;
BROWSE brw2;
FIELDS
KatNazna.Name 'Новое назначение' : protect;
END;
END;


HANDLEEVENT
cm Ok:
{
!z3:=KatNazna.Name
CloseInterFace(cmDefault);
}
end // event
END.
Sail
Новичок
Сообщения: 29
Зарегистрирован: 29 мар 2005, 17:49

Re: Простенький интерфейс

Сообщение Sail »

Если я правильно понял, что нужно при инициализации установить курсор в броузе на запись с текущим назначением, то сделай так:
в var'ах убери комментарии с z5,
в parameters вместо katnazna.nrec поставь z5
в handleevent добавь:
cmInit:{
getfirst katnazna where z5 = katnazna.nrec;
}
8)
И еще - у тебя по cmOk (почему он с пробелом написан?) закомментирована строчка
!z3 := katnazna.name
Однако, надо z3 заменить на z4 (ежели судить по описанию и назначению переменных) .`)
hope
Местный житель
Сообщения: 1353
Зарегистрирован: 29 мар 2005, 17:49
Контактная информация:

Re: Простенький интерфейс

Сообщение hope »

Спасибо, Sail! Действительно теперь курсор встает туда, куда надо! :))
Ответить