Текущее время: Вс, июл 20 2025, 19:58

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: Yandex [Bot]


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

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