Связанные поля

  • Автор темы Guest_Den_*
  • Дата начала
Статус
Закрыто для дальнейших ответов.
G

Guest_Den_*

#1
Очень стыдно за такой вопрос, но, что делать - не могу догнать сам. :blink:
Хотя, возможно задача не такая уж и простая для Лотуса, просто не знаю....
Есть на форме два поля 1 и 2. Мне надо чтобы при изменении поля 1 соответствующим образом измнялось поле2, а именно выполнялась формула.
Делаю поле 2 вычисляемым, значение его это моя формула. Не работает!!!!!!!!!!!
Вернее работает только при старте формы, а если я меняю значение поля 1 - поле 2 остается неизменным.

Неужели надо использовать только OnChange & Java????? Если да, то это .... :eek:

Спасибо за ответ!
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
1
#2
Для: Guest_Den_*
Варианты:
1) После изменения надо сделать обновление формы. Например, нажми F9.
2) Если первое поле типа Dialog List (или еше какое с выбором из списка), то надо поставить галочку "Refresh fields on keyword change"
3) Поставь у формы свойство "Automatically refresh fields"
 
G

Guest

#3
<!--QuoteBegin-Medevic+2:11:2005, 15:49 -->
<span class="vbquote">(Medevic @ 2:11:2005, 15:49 )</span><!--QuoteEBegin-->Для: Guest_Den_*
Варианты:
1) После изменения надо сделать обновление формы. Например, нажми F9.
2) Если первое поле типа Dialog List (или еше какое с выбором из списка), то надо поставить галочку "Refresh fields on keyword change"
3) Поставь у формы свойство "Automatically refresh fields"
[snapback]26625" rel="nofollow" target="_blank[/snapback]​
[/quote]


Не выходит, батенька. Вот такие результаты:

1) Нажимать F9 не устраивает. Пользователь выбирает дату в превом поле, а во втором соответственно должны измениться данные.
2) галочку не нашел, тип поля Дата/Время
3) не помогло


СПАСАЙТЕ КТО МОЖЕТ!!!!!! :blink:
 
D

Domino6

#5
<!--QuoteBegin-Guest+2:11:2005, 18:12 -->
<span class="vbquote">(Guest @ 2:11:2005, 18:12 )</span><!--QuoteEBegin-->1) Нажимать F9 не устраивает. Пользователь выбирает дату в превом поле, а во втором соответственно должны измениться данные.
[snapback]26631" rel="nofollow" target="_blank[/snapback]​
[/quote]
Ну выбрал он дату
2-е поле делаеш "вычислямое при показе" или "вычисляемы текст" втавляеш + если надо хранить вычисленные данные делае 3-е "вичисляемое" но скрытое - оно вычислится по формуле при сохранении
 
G

Guest

#6
2 Domino6:
Формула. Про курс валют помнишь??? Ты подсказывал сегодня. Это оно самое. По кнопке всё работает. Но задача стоит сделать автоматом изменение курса в поле 2 в зависимости от выбранной даты в поле 1.
 
D

Domino6

#7
Если курс валют для дальнейшего вычисление то см. алгоритм если только для видимости то на 2 поста выше

Итак делаем обманку.
Вариант 1
1. пиклист по виду с курсами (пользователь видит дату)
2. при выборе ьберем и курс из 3-й колонки
3. разносим по вычисляемымм полям (преобразовав предварительно тексты в дату и число)

Вариант 2
1. редактируемая дата + кнопка рядом "определлить курс"
2. в кнопке формула (заносим в поле курс)

Вариант 3
1. дата редактируемая
2. курс (keyword) - вписываем формулу выборки значений (dblookup), + обновление при изменении документа. Здесь суть обмана что значение всегда 1

В варианте 3 в поле попадает текст - требуется преобразование

Я рекомендую Вариант 1 . Проще и нагляднее для пользователя + задел на будущее если несколько валют. при многовалютности вставится категоризация по валюте а в пиклисте появляются категории. Выгоды 1-им диалогом выборка 3-х параметров
- валюта
- дата
- курс
 
G

Guest_Den_*

#8
Domino 6 спасибо за советы.

Есть одно НО!!!

Пользователь не хочет и не должен выбирать конкретный курс не из вью не из пик листа. для него выборка курса должа быть прозрачна, так как основной акцент создаваемого им документа совсем в другом. Пользователь заполняет поля документа, одно из них дата, он либо не меняет её (оставляет текущую) либо выбирает. Когда он выбирает дату - одно из полей этого документа должно заполниться курсом валюты за эту дату. Вот собственно и суть. Формула для выборкки у меня уже есть, по кнопке (как ты предложил в варианте 2) всё работает, но жалуются, что неудобно... Хочу чтоб таже формула выполнялась когда поле с датой меняется. Не думал что это проблема...

Чё делать? Или это не решабельно?
 
G

Guest

#9
А может можно вызвать событие "F9" при измении поля дата? Тогда проблема в принципе умрет... Но есть ли такая командочка?
 
D

Domino6

#11
<!--QuoteBegin-Guest_Den_*+3:11:2005, 09:55 -->
<span class="vbquote">(Guest_Den_* @ 3:11:2005, 09:55 )</span><!--QuoteEBegin-->ДА.... Видать не простая это задача.
[snapback]26647" rel="nofollow" target="_blank[/snapback]​
[/quote]

Потому что подход к задаче реляционный
 
G

Guest_Den_*

#12
Коллеги по перу!!!! :)

Всё (как и всегда, зачастую) ПРОСТО!

Всё что вы постили несомненно правда, НО, если поле выбора не "Календарь"!!!!! С ним ни фига не работает, при его изменении лотус не генерит того-же события, что и при выборе, скажем, из "списка с окном". В этом была вся соль.
Приятно когда разобрался сам, но соотнести время потраченное на решение этой задачи, и ту незначительную (в принципе) роль которую она играет в большом документе с кучей наворотов, то становится грустно.... :lol:
 
G

Guest_Den_*

#13
Кстати, не в укор модераторам и корифеям Лотуса, я заметил одну закономерность в форуме - если ответ не получен и не известно как реализовать ту или иную задачу ставится однозначный штамп "У ВАС РЕЛЯЦИОННЫЙ ПОДХОД!". В принципе мне по фигу но иногда это не соответствует действительности. Так что поаккуратнее пожалуйста.

PS Например в контексте этого топика говорить о подходе к СУБД вообще нечего - задача чисто на интерфейс, методы и события элементов управления.

PS2 Без обид
 
Статус
Закрыто для дальнейших ответов.