Текущее время: Сб, июл 19 2025, 16:20

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: PDF Скрипт скрыть поле в зависимости от наличия данных в другом поле
СообщениеДобавлено: Ср, ноя 20 2013, 14:48 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, мар 17 2009, 00:53
Сообщения: 166
Откуда: Екатеринбург
Пол: Мужской
Господа, нужна помощь.

Изображение

Нужно скрывать поле Б(FM_1), если поле А пустое

Уже реализовано. Если поле А пустое то оно invisible

Пробовал:
- писать в А
Code:
if ($ == null) then FM_1.presence "invisible" endif
if ($ == null) then $.presence = "invisible" endif


так же пробовал писать прям в Б, если А нул то Б инвизибл.
и в другом поле писал логику... не помогает

В Preview PDF отрабатывает нормально, а когда вызываю через программу - то ошибку пишет, мол оператора А не существует, то не скрыват вовсе.
Нид хэлп :)

_________________
Высшая степень уважения к клиенту - это разработать программу не так как он хочет, так как следует!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: PDF Скрипт скрыть поле в зависимости от наличия данных в другом поле
СообщениеДобавлено: Ср, ноя 20 2013, 15:33 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Чт, авг 22 2013, 01:09
Сообщения: 108
Откуда: г. Жлобин, Республика Беларусь
Пол: Мужской
Заключите оба поля в Subform и в разделе initialization для данной Subform напишите следующий код (здесь идет сравнение со значением по умолчанию - "" для строк. Подставьте свое или попробуйте null как писали раньше):
Code:
if ( $.A == "" ) 
then
  $.A.presence = "hidden"
  $.FM_1.presence = "hidden"
else
  $.A.presence = "visible"
  $.FM_1.presence = "visible"
endif


Или если лень создавать Subform, то в зависимости от того, куда вы пищите код, вставляйте полную ссылку (имеется в виду что то типа data.A.) для поля А или для поля Б или для обеих полей.

_________________
Когда другие слепо следуют за истиной, помни - ничто не истина.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: PDF Скрипт скрыть поле в зависимости от наличия данных в другом поле
СообщениеДобавлено: Чт, ноя 21 2013, 05:33 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, мар 17 2009, 00:53
Сообщения: 166
Откуда: Екатеринбург
Пол: Мужской
Nick_Papkov написал:
Заключите оба поля в Subform и в разделе initialization для данной Subform напишите следующий код (здесь идет сравнение со значением по умолчанию - "" для строк. Подставьте свое или попробуйте null как писали раньше):
Code:
if ( $.A == "" ) 
then
  $.A.presence = "hidden"
  $.FM_1.presence = "hidden"
else
  $.A.presence = "visible"
  $.FM_1.presence = "visible"
endif


Или если лень создавать Subform, то в зависимости от того, куда вы пищите код, вставляйте полную ссылку (имеется в виду что то типа data.A.) для поля А или для поля Б или для обеих полей.


Хм, спасибо. Но не помогло.

Объединил в сабформ.
вот скрипт:
Code:
----- data.#pageSet[0].Page1.#subform[1]::initialize: - (FormCalc, client) -------------------------

if ( $.IT_FIZMEH_OUT.DATA.F1 == "" )
then
  $.IT_FIZMEH_OUT.DATA.F1.presence = "hidden"
  $.FM_1.presence = "hidden"
else
  $.IT_FIZMEH_OUT.DATA.F1.presence = "visible"
  $.FM_1.presence = "visible"
endif


Пишет ошибку доступа к оператору $.IT_FIZMEH_OUT.DATA.F1
попробовал разные комбинации - одно и тоже.


Цитата:
Или если лень создавать Subform, то в зависимости от того, куда вы пищите код, вставляйте полную ссылку (имеется в виду что то типа data.A.) для поля А или для поля Б или для обеих полей.

Это уже всера перепробовал. При привью работает а через программу ругается.

_________________
Высшая степень уважения к клиенту - это разработать программу не так как он хочет, так как следует!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: PDF Скрипт скрыть поле в зависимости от наличия данных в другом поле
СообщениеДобавлено: Чт, ноя 21 2013, 05:58 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, мар 17 2009, 00:53
Сообщения: 166
Откуда: Екатеринбург
Пол: Мужской
Во что спасло.
Пока чистил зубы, пришла мысль. Сначала пробовал что посоветовали, потом свою запилил))

Раньше ориентация была "скрывать если нету", а щас "показывать если есть"

Code:
----- data.#pageSet[0].Page1.IT_FIZMEH_OUT.DATA.F1::initialize: - (FormCalc, client) ---------------

if ($ == null) then $.presence = "invisible"
else
data.#pageSet[0].Page1.FM_1 = "Результаты физико-механических испытаний"
endif


----- data.#pageSet[0].Page1.IT_ZERN_OUT.DATA.F1::initialize: - (FormCalc, client) -----------------

if ($ == null) then $.presence = "invisible"
else
data.#pageSet[0].Page1.ZS_1 = "Зерновой состав"
endif

_________________
Высшая степень уважения к клиенту - это разработать программу не так как он хочет, так как следует!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: PDF Скрипт скрыть поле в зависимости от наличия данных в другом поле
СообщениеДобавлено: Чт, ноя 21 2013, 08:14 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, мар 17 2009, 00:53
Сообщения: 166
Откуда: Екатеринбург
Пол: Мужской
Ещё вопрос:

Как, а точнее куда писать скрипт if ($ == null) then $.presence = "invisible" endif
если нужно чтобы ячейка стала Инвизибл если пользователь из неё стёр данные?

Code:
----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::initialize: - (FormCalc, client) ------------------
if ($ == null) then $.presence = "invisible" endif

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::enter: - (FormCalc, client) -----------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::exit: - (FormCalc, client) ------------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::calculate: - (FormCalc, client) -------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::validate: - (FormCalc, client) --------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::mouseEnter: - (FormCalc, client) ------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::mouseExit: - (FormCalc, client) -------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::change: - (FormCalc, client) ----------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::full: - (FormCalc, client) ------------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::mouseUp: - (FormCalc, client) ---------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::mouseDown: - (FormCalc, client) -------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::click: - (FormCalc, client) -----------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::preSave - (FormCalc, client) ----------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::postSave - (FormCalc, client) ---------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::prePrint - (FormCalc, client) ---------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::postPrint - (FormCalc, client) --------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::preSubmit:form - (FormCalc, client) ---------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::docReady - (FormCalc, client) ---------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::docClose - (FormCalc, client) ---------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::ready:form - (FormCalc, client) -------------------

----- data.#pageSet[0].Page1.IT_HIM_OUT.DATA.F1::ready:layout - (FormCalc, client) -----------------

_________________
Высшая степень уважения к клиенту - это разработать программу не так как он хочет, так как следует!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: PDF Скрипт скрыть поле в зависимости от наличия данных в другом поле
СообщениеДобавлено: Чт, ноя 21 2013, 20:17 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Чт, авг 22 2013, 01:09
Сообщения: 108
Откуда: г. Жлобин, Республика Беларусь
Пол: Мужской
Судя по скрипту поле А у вас столбец таблицы. А убрать столбец или строку в таблице средствами скрипта, мне кажется, не получится. По крайне мере у меня такой вариант не получался. Сделать содержимое конкретной ячейки невидимым (invisible) получалось, а вот убрать его с формуляра (hidden) - нет. Вот если вашу таблицу заменить на отдельные поля и заключить их в subform, то приведенный мною скрипт сработает, так как мы работает с отдельным полем, а не столбцом в таблице.
Что касается как спрятать поле после того, как пользователь удалил с него данные, то я такое не делал поэтому ничего посоветовать не могу. А надо это делать ? Ведь пользователь может по ошибке затереть содержимое. В этом случае содержимое убрали, поле исчезло, а пользователю надо в него ввести данные. И куда он введет их, если поле недоступно для него ? :-)

_________________
Когда другие слепо следуют за истиной, помни - ничто не истина.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: PDF Скрипт скрыть поле в зависимости от наличия данных в другом поле
СообщениеДобавлено: Чт, ноя 21 2013, 21:56 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, фев 27 2013, 20:33
Сообщения: 59
Пол: Мужской
mvs87, если все же необходимо посмотрите схему потока событий

Изображение


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: PDF Скрипт скрыть поле в зависимости от наличия данных в другом поле
СообщениеДобавлено: Чт, ноя 21 2013, 22:02 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, фев 27 2013, 20:33
Сообщения: 59
Пол: Мужской
Тоже не совсем понятно зачем скрывать ячейку, если пользователь удалил из неё данные. Может будет достаточно сделать белые границы у ячейки,чтобы ячейку не было видно при печати, и одновременно можно вернуться к её редактированию.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: PDF Скрипт скрыть поле в зависимости от наличия данных в другом поле
СообщениеДобавлено: Пт, ноя 22 2013, 05:26 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, мар 17 2009, 00:53
Сообщения: 166
Откуда: Екатеринбург
Пол: Мужской
Господа, благодарю.
Скрипт на событии Click не отрабтывал потому что: fp_docparams-dynamic бы не 'X', а space

Вот помогло. отписаться вчера не смог.
Засунул в событие Click и MouseEnter.


картинка нужная. сохранил. спасибо :)

_________________
Высшая степень уважения к клиенту - это разработать программу не так как он хочет, так как следует!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB