Содержание



Проект Курс сопоставления

ПравилаФорматирования если нужно.

toc

Что сделать

Вводная

1. Есть клиенты, им продается товар и услуги
2. С каждым клиентом может быть достигнута договоренность о специальном для него курсе, по которому клиент оплачивает продажу
  *Если клиент платит в национальной валюте, то он платит столько сколько выписали в документе
  *Если клиент платит в другой валюте, то она платит по специальному курсу
1. Важно, что договоренность может быть достигнута не только в момент продажи, но и в любой другой момент. Например, позвонили клиенту, напомнили об оплате, договорились о новом курсе

Постановка задачи

2.В момент переоценки и в момент сопоставления система должна оценивать задолженность по специальному курсу - [[КурсСопоставления]], если он установлен (если не установлен, то система должна брать курс из справочника валют, как и раньше)
3.Система должна "помнить" о договоренностях для каждой продажи и платежа
4.Система должна автоматически использовать последний установленный [[КурсСопоставления]]

Пример


Как решать

I. Создание полей для хранения информации о Курсе сопоставления

1. Создание полей.
  * Для хранения курса валюты проводки обычно создается два поля: курс валюты проводки ([[~ExchRate]]) и курс основной валюты ([[~ExchRateSecondary]]). В случае если для указания курса валюты проводки не используется триангуляция, заполняется только поле [[~ExchRate]], в которое записывается курс валюты по отношению к основной валюте компании (курс за 100 единиц основной валюты). Если используется триангуляция, в [[~ExchRate]] записывается курс валюты проводки по отношению к валюте триангуляции, а в [[~ExchRateSecondary]] – курс основной валюты к валюте триангуляции. Таким образом, на основании полей [[~ExchRate]] и [[~ExchRateSecondary]] всегда можно вычислить курс (или кросс-курс) валюты проводки к основной валюте компании.
  * Для хранения [[КурсСопоставления]] также надо создать два поля. Для пользователя будет доступно только поле [[~ExchRate]]. В поле [[~ExchRateSecondary]] система сама должна проставлять курс основной валюты по отношению к валюте триангуляции, если курс валюты проводки на дату проводки указан с триангуляцией в справочнике [[~ExchRate]] (для выяснения этого можно воспользоваться функцией ~Currency::triangulation()).
  * Если возникнет потребность в вводе обратного курса, это следует организовать с помощью edit-метода (так же, как это сделано в форме справочника «Курсы валют»).
  * Хранить курсы, вероятно, следует в таблице [[~CustTransOpen]], так как «желаемый курс» - свойство открытой проводки. После сопоставления курс будет храниться в таблице [[~CustSettlement]].

—- !!(зел)а почему в ~CustTransOpen? может просто в ~CustTrans? MazzyMazzy /27.01.2005 20:17/!!!!Потому что «курс сопоставления» - свойство открытой проводки. Сопоставление и переоценка работают с открытыми проводками!!

!!(зел)Ну и что? Пользователи то работают с накладными и платежами. Пользователи работают с клиентскими проводками. Пользователей можно заставить работать с открытыми проводками. Какая разница, где хранить курс? А открытые проводки могут пересоздаваться, если пересчитать график. В открытые проводки надо вспоминать курс, если будет выполнено рассопоставление. Может быть хранить курс где-нибудь в обычной клиентской проводке? а в открытой только доставать его? MazzyMazzy /06.02.2005 03:22/!!


2. Добавление элементов дизайна для редактирования полей.
  * Возможность изменения [[КурсСопоставления]] следует добавить в форму «Открыто» ([[~CustTransOpen]]; доступна из справочника клиентов по нажатию на кнопку «Проводки», а затем на кнопку «Открыто»).
  * Кроме того, [[КурсСопоставления]] должен как минимум выводиться в форме «Сопоставление открытых проводок» ([[~CustOpenTrans]]; доступна из справочника клиентов по нажатию на кнопку ~Функции/Сопоставление открытых проводок»).
3. Дополнительный сервис
  * [[КурсСопоставления]] должен автоматически устанавливаться равным фиксированному курсу, если фиксированный курс не равен 0
  * [[КурсСопоставления]] должен автоматически устанавливаться из формы платежей в журнале платежей. Для этого надо добавить поля в строки журнала платежей клиентов
  * [[КурсСопоставления]] возможно будет правится из накладных. Продавец заходит в журнал накладных и правит курс, если накладная еще не сопоставлена ??Необязательный пункт??

II. Обработка желаемого курса при сопоставлении открытых проводок

III. Обработка желаемого курса при переоценке