Как скрыть я ссылку горячей точки, когда она нажата?
У меня есть приложение лотоса и у меня есть страница, на которой есть две ссылки:
- Регистрироваться
- Проверять, выписываться
обе ссылки открывают форму посещаемости для ежедневной регистрации заезда и отъезда.
как только пользователь регистрируется, я хочу скрыть ссылку регистрации и показать только ссылку проверки...
У меня есть поле "Статус" в форме посещаемости, в котором указано, зарегистрировался ли сотрудник или нет. Как использовать это поле в формуле скрытия страницы, чтобы скрыть мою ссылку после ее нажатия?
1 ответ
Прежде всего, ссылки должны быть в отдельных параграфах, чтобы ими можно было управлять отдельно.
Во-вторых, у вас должно быть представление, в котором первый столбец отсортирован и содержит имя пользователя, за которым следует дата из полей в ваших документах ежедневной посещаемости. Например, он должен быть в таком формате, как "Joe User/Org-01-01-12". Второй столбец в представлении должен иметь статус из документов. Ради этого ответа давайте назовем это представление "DailyAttendance".
В-третьих, у вас есть три случая: документ о посещаемости для пользователя в этот день не существует, он существует, и статус "Зарегистрирован", или он существует, и статус "Выписан". Может быть и четвертый случай, когда документ существует, но статус не "зарегистрирован" или "извлечен", но ваша логика, вероятно, должна попытаться избежать этого, и в любом случае я собираюсь написать формулы скрытия когда так что обе ссылки будут скрыты в этом случае.
Теперь, в большинстве случаев, на самом деле немного легче думать в терминах "види когда", а не "когда прячешься", так что я собираюсь переформулировать ваши требования как "когда видят". Ваши правила See-WHen:
- См. Пункт "Регистрация", когда документ о ежедневном посещении для текущего пользователя и текущего дня не существует.
- См. Пункт "Извлечение денег", если для текущего пользователя и текущего дня существует документ о ежедневном посещении, а поле "Статус" в документе "Зарегистрировано".
Чтобы использовать логику "видеть когда" в формуле "скрыть когда", вы просто пишете формулу, основанную на правилах "когда видите", а затем помещаете логическую форму, а не ее конечный результат.
Ваше время скрытия для абзаца, содержащего точку входа "Регистрация", будет выглядеть следующим образом:
key := @Name([CN];@Username) + "-" + @Text(@Today);
status := @DbLookup("Notes":"NoCache";"":"";"DailyAttendance";key;2);
notFound := @IsError(status);
seeWhen = notFound;
!(seeWHen);
Большинство опытных программистов Notes сведут это в более короткую формулу. Я оставил его в пошаговом формате, чтобы сделать его как можно более очевидным.
Ваше время скрытия для абзаца, содержащего точку доступа "Check-Out", будет выглядеть следующим образом:
key := @Name([CN];@Username) + "-" + @Text(@Today);
status := @DbLookup("Notes":"NoCache";"":"";"DailyAttendance";key;2);
found := !(@IsError(status));
seeWhen = found & (status = "Checked In");
!(seeWhen)