Докомпиляция интерфейса заявок BOOKINGS
Модераторы: m0p3e, edward_K, Модераторы
-
- Местный житель
- Сообщения: 552
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Челябинск
- Контактная информация:
Re: Докомпиляция интерфейса заявок BOOKINGS
Да, действительно, это то, что надо. Прочитал нужные записи, благодарю!
-
- Местный житель
- Сообщения: 552
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Челябинск
- Контактная информация:
Re: Докомпиляция интерфейса заявок BOOKINGS
Доброй среды, коллеги.
Продолжаю с вашей помощью совершенствовать наш интерфейс по заявкам. На сей раз прошу подсказать, как поймать изменение поля "количество". Сейчас изменение цены обрабатывается так:
А как быть с количеством? Изменение поля "Количество" не ловится в переменной curfield.
Продолжаю с вашей помощью совершенствовать наш интерфейс по заявкам. На сей раз прошу подсказать, как поймать изменение поля "количество". Сейчас изменение цены обрабатывается так:
Код: Выделить всё
cmExprFieldChanged :
{
if inherited:: handleEvent (cmExprFieldChanged) = heOk then
{
case curfield of
...
#CLAIM_PRICE_:
{
if claim.kol = 0 then {message('Изменилась цена!'); // Нормально
}
#CLAIM.KOL_:
{ //Нет реакции
}
end;
}
}
-
- Местный житель
- Сообщения: 554
- Зарегистрирован: 17 июл 2012, 11:56
- Откуда: Республика Беларусь, г.Могилев
Re: Докомпиляция интерфейса заявок BOOKINGS
Здравствуйте. Может неправильно написали? Точно #CLAIM.KOL_, а не #CLAIM_KOL_? Явно проблема с написанием, если нет реакции.
-
- Местный житель
- Сообщения: 552
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Челябинск
- Контактная информация:
Re: Докомпиляция интерфейса заявок BOOKINGS
Вот из хелпа:
Вроде правильно написал.. Любые другие поля ловятся, а это никак..
Может, кто-нить подскажет, как все поля прочитать в TreeColumn c_CLAIMTREE?
Или такая мысль: удалить это поле (для этого надо указатель, что ли, на него получить), а вместо него создать своё?
Код: Выделить всё
TreeBrowser ClaimTree 'Спецификация'
TreeColumn c_CLAIMTREE_CLAIM_WPOS_N #252
TreeColumn c_CLAIMTREE_PRMC
TreeColumn c_CLAIMTREE_KATNOTES_.SNAME_Статус_позиции 'Статус'^M'позиции'
TreeColumn c_CLAIMTREE_CLAIMGROUPNAME_Наименование_группы 'Наименование'^M'группы'
TreeColumn c_CLAIMTREE_CLAIMGROUPCODE_Код_группы 'Код'^M'группы'
TreeColumn c_CLAIMTREE_SPECIFICATIONNAME_Наименование_ресурса 'Наименование'^M'ресурса'
TreeColumn c_CLAIMTREE_SPECIFICATIONBAR_Номенклатурный_номер 'Номенклатурный'^M'номер'
TreeColumn c_CLAIMTREE_CONSTRUCTIONSIGN_Конструкторское_обозначение 'Конструкторское'^M'обозначение'
TreeColumn c_CLAIMTREE_CLAIM_DSTART_Дата_приёма 'Дата'^M'приёма'
TreeColumn c_CLAIMTREE_CLAIM_DFINISH_Дата_исполнения 'Дата'^M'исполнения'
TreeColumn c_CLAIMTREE_EDNAME_Ед._изм. 'Ед.'^M'изм.'
TreeColumn c_CLAIMTREE_CLAIM.KOL_Кол-во 'Кол-во'
TreeColumn c_CLAIMTREE_CLAIM_PRICE_Цена 'Цена'
TreeColumn c_CLAIMTREE_CLAIM_SUMMA_Сумма 'Сумма'
TreeColumn c_CLAIMTREE_CLAIM_DISCOUNT_Скидка 'Скидка'
TreeColumn c_CLAIMTREE_FANAL1_Аналитика_1 'Аналитика 1'
TreeColumn c_CLAIMTREE_FANAL2_Аналитика_2 'Аналитика 2'
TreeColumn c_CLAIMTREE_FANAL3_Аналитика_3 'Аналитика 3'
TreeColumn c_CLAIMTREE_FANAL4_Аналитика_4 'Аналитика 4'
TreeColumn c_CLAIMTREE_FANAL5_Аналитика_5 'Аналитика 5'
TreeColumn c_CLAIMTREE_VALUE1_Дополнительное_поле_1 'Дополнительное поле 1'
TreeColumn c_CLAIMTREE_VALUE2_Дополнительное_поле_2 'Дополнительное поле 2'
TreeColumn c_CLAIMTREE_VALUE3_Дополнительное_поле_3 'Дополнительное поле 3'
TreeColumn c_CLAIMTREE_VALUE4_Дополнительное_поле_4 'Дополнительное поле 4'
TreeColumn c_CLAIMTREE_VALUE5_Дополнительное_поле_5 'Дополнительное поле 5'
TreeColumn c_CLAIMTREE_FOOTDYNAMIC1_Расчётное_поле_1 'Расчётное'^M'поле 1'
TreeColumn c_CLAIMTREE_FOOTDYNAMIC2_Расчётное_поле_2 'Расчётное'^M'поле 2'
TreeColumn c_CLAIMTREE_FOOTDYNAMIC3_Расчётное_поле_3 'Расчётное'^M'поле 3'
TreeColumn c_CLAIMTREE_FOOTDYNAMIC4_Расчётное_поле_4 'Расчётное'^M'поле 4'
TreeColumn c_CLAIMTREE_FOOTDYNAMIC5_Расчётное_поле_5 'Расчётное'^M'поле 5'
Может, кто-нить подскажет, как все поля прочитать в TreeColumn c_CLAIMTREE?
Или такая мысль: удалить это поле (для этого надо указатель, что ли, на него получить), а вместо него создать своё?
Re: Докомпиляция интерфейса заявок BOOKINGS
А зачем подчеркивание в конце?zna писал(а):Доброй среды, коллеги.
Продолжаю с вашей помощью совершенствовать наш интерфейс по заявкам. На сей раз прошу подсказать, как поймать изменение поля "количество". Сейчас изменение цены обрабатывается так:А как быть с количеством? Изменение поля "Количество" не ловится в переменной curfield.Код: Выделить всё
#CLAIM.KOL_:
Код: Выделить всё
fields
Claim.Kol'Кол-во'('Количество для исполнения',,sci178Esc):[11,3], noprotect;
[Claim_Price_]if(5=5,Claim.Price,0)'Цена'('Цена за единицу',,sci178Esc):[11,2],noProtect;
[Claim_Summa_]if(7=7,Claim.Summa,0)'Сумма'('Сумма по позиции',,sci178Esc):[13,2],noProtect;
[Claim_Discount_]if(3=3,Claim.Discount,0)'Скидка'('Скидка по позиции',,sci1378Esc):[6,2],noProtect, pickbutton;
end
-
- Местный житель
- Сообщения: 552
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Челябинск
- Контактная информация:
Re: Докомпиляция интерфейса заявок BOOKINGS
Убрал подчёркивание, теперь так:
Нет реакции
Код: Выделить всё
cmExprFieldChanged :
{
if inherited:: handleEvent (cmExprFieldChanged) = heOk then
{
case curfield of
...
#CLAIM_PRICE_:
{
if claim.kol = 0 then {message('Изменилась цена!'); // Нормально
}
#CLAIM.KOL:
{ message('Claim.kol!'); //Нет реакции
}
-
- Местный житель
- Сообщения: 1844
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
- Контактная информация:
Re: Докомпиляция интерфейса заявок BOOKINGS
cmExprFieldChanged
Событие возникает при изменении вычисляемого поля
Событие возникает при изменении вычисляемого поля
-
- Местный житель
- Сообщения: 552
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Челябинск
- Контактная информация:
Re: Докомпиляция интерфейса заявок BOOKINGS
Понял. Получилось так:
Благодарю всех ответивших!
Код: Выделить всё
Panel specClaim table Claim;
HandleEvent
cmCheckField:
{
if inherited::handleEvent(cmCheckField) = heOk then
{
case curfield of #CLAIM.KOL:{message('Claim.kol!');}
end;
}
}
end;
end;
-
- Местный житель
- Сообщения: 552
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Челябинск
- Контактная информация:
Re: Докомпиляция интерфейса заявок BOOKINGS
Нет предела совершенству, в том числе и этому замечательному интерфейсу..
Вот есть задумка внизу окна разместить свой дополнительный browse. Для этого в интерфейсе редактирования заявок Win1 c размерами (0,1,80,25) изменил TreeBrowse CLAIMTREE в результате его размеры стали (1,12,79,15). Казалось бы, место есть.
Но если добавить панель
то получаю ошибку Ошибка: Текущая область ввода перекрывается с CLAIMTREE C:\Viper\Bookings\AlterBookings.vip(стр. 155, поз. 3)
Собственно, вопрос: почему?? Ведь места хватает, если по координатам считать!
Вот есть задумка внизу окна разместить свой дополнительный browse. Для этого в интерфейсе редактирования заявок Win1 c размерами (0,1,80,25) изменил TreeBrowse CLAIMTREE
Код: Выделить всё
if cfsGetObjInfo('ClaimTree', cur_obj, l04, cont_inf, aObjType) = cfOk then
{if cfsSetProp(l04, cfpRectB_Y, word(15)) <> cfOk
Но если добавить панель
Код: Выделить всё
Panel Panel_;
Table t_claim
browse bmnpl
show at (5, 18,30 ,19 )
fields
t_claim.ddate 'Дата' : [10], protect;
t_claim.cena 'Цена' : [10], protect;
t_claim.nacemka 'Наценка, %' : [10], protect;
end;
end;
Собственно, вопрос: почему?? Ведь места хватает, если по координатам считать!
-
- Местный житель
- Сообщения: 1844
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
- Контактная информация:
Re: Докомпиляция интерфейса заявок BOOKINGS
Потому что cfsSetProp в рантайме сработает только
-
- Местный житель
- Сообщения: 552
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Челябинск
- Контактная информация:
Re: Докомпиляция интерфейса заявок BOOKINGS
.. и как поправить?Den писал(а):Потому что cfsSetProp в рантайме сработает только