Перейти к содержимому


Редактирование списка

список

Сообщений в теме: 3

#1 BorisGlobal

    Новичок

  • Пользователи
  • Pip
  • 8 сообщений

Отправлено 16 Октябрь 2015 - 15:54

Есть задача: выписывать счета периодические по месяцам. Выбор месяца и года ставлю из списка с множественным выбором (например: ноябрь 2015, декабрь 2015, январь 2015 и т.д.). Нужно чтобы при выписывании счета в списке оставались те месяца по которым счет ещё не выставлялся.
Вопрос: как сделать неактивным (или вообще удалять) из поля типа список ненужные месяца при редактировании счёта?

#2 Tony999

    Активный участник

  • Пользователи
  • PipPipPip
  • 412 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 17 Октябрь 2015 - 23:55

Лучше эти периоды (месяц-год) сделать в отдельной таблице и связать ее с основной через поле типа "связь". Тогда это будет поле не со множественным выбором, а выпадающий список периодов.
По мере того, как будут выписываться счета, необходимо в этой дополнительной таблице на выбранный период ставить "флаг" . Для этого создать там как "флаг" поле со списком "Да/Нет", а также фильтр по этом полю.
Через вычисления надо будет каждый раз в поле "флаг" ставить "Да", чтобы при выписке следующего счета уже использованный ранее период (месяц-год) отсутствовал в выпадающем списке.
Получается, что на каждого Клиента нужно будет создавать такую отдельную дополнительную таблицу, что не рационально.
Представляется, что можно создать общую для всех Клиентов таблицу периодов и создать фильтр по полю связи Клиент с основной таблицей.
Таким образом, при выборе Клиента таблица периодов из которой будет выбирать период (месяц-год) для выписки счета будет отфильтрована только для одно выбранного Клиента и в ней будут только ранее не использованные периоды.

Сообщение отредактировал Tony999: 17 Октябрь 2015 - 23:56

Умные сайты на заказ
https://info.crm-master.info

#3 BorisGlobal

    Новичок

  • Пользователи
  • Pip
  • 8 сообщений

Отправлено 21 Октябрь 2015 - 11:17

А как тогда можно будет выбирать несколько месяцев? Например мне нужно в одном счёте вставить и ноябрь 2015 и декабрь 2015

#4 Александр Пономарев

    Активный участник

  • Пользователи
  • PipPipPip
  • 435 сообщений
  • Пол:Мужчина
  • Город:Таганрог

Отправлено 24 Октябрь 2015 - 17:45

В у вас суммы каждый месяц по каждому клиенту одинаковые или разные?
Вообще-то я бы сделал так:
1. Таблица типовых периодов оплаты (12 записей помесячно) с полем типа список "включать/не включать".
2. Таблица клиентов с полем "Аренда" типа список "Считать/Не считать"
3. Таблица счетов с полями "Клиент", "Типовой период", "Статус счета"

В "Статусе счета" список "Не наступил/Наступил/Выставлен/Оплачен"

Алгоритм:
1. Зашли в типовые периоды оплаты и поменяли поле на "включать" по всем месяцам, которые нужно включать в счета на оплату.
2. Нажали кнопку дополнительного действия "Сформировать счета"
3. В алгоритме "Сформировать счета" SELECTом перебираем выбранные месяца, внутри которых клиентов со статусом "Выставлять", внутри которого смотрим, есть ли в таблице "счета" такой счет, у которого в этом году совпали и клиент и период. Если нет, то создаем.
4. Открываем запись из таблицы "Клиенты" и подключаем подтаблицу "Счета" с фильтром "Статус не равен оплачено". Получаем все не оплаченные ранее и за отчетные месяца счета клиента.

В общем где-то так. А вот практическая реализация уже в личке и за деньги.





Количество пользователей, читающих эту тему: 2

0 пользователей, 2 гостей, 0 анонимных