====== Обзор на използваните дати ====== Тази статия представя подробен обзор на всички видове дати, които се въвеждат и извеждат във Framma на различни етапи при оформянето на поръчки. Да се има предвид, че Framma е изградена върху релационна база данни, т.е. едно поле с дата може да се въвежда на едно място и да се вижда на много други, и обратно -- може да се въвежда и редактира през няколко различни форми и промяната засяга всички други референции към същото това поле. Датите от типа //Дата на поръчка/документ// и //дата на създаване/последна модификация// не са описвани в детайли тук, тъй като те са дефинитивно ясни и присъщи на почти всички Framma документи. В скоби и курсив е добавено системното име на съответната данна -- което е предимно за ориентир на разработчика при последващи дискусии; потребителите може да не му обръщат внимание, въпреки че то показва за коя точно дата става въпрос и дали има референция към нея от друго място. Също така, навсякъде където има нужда да се упомене титуляр //(Контур или Комполенд)//, е споменато само //Контур//, като се подразбира, че може и да е другата фирма. ===== ВХОДЯЩА ПОРЪЧКА ===== * **Дата на поръчката** ''(purchase_orders.poDate)'' -- ръчно въвеждане при създаване на нова поръчка * ''(purchase_orders.poInDateConfirm)'' -- вече не се използва, първоначално е било предвидено да се въвежда датата, на която Контур е потвърдил на възложителя изпълнението на поръчката му. * ''(purchase_orders.conf_sent_at)'' -- автоматично се записва датата, на която (последно) е изпратено //Purchase Order Confirmation//.\\ Визуализира се в: //Входящи поръчки, График, Фактури (основание/продукти)//. ==== Входяща поръчка > ПРОДУКТИ ==== * **Дата доставка по вх.поръчка / Изискана дата доставка** ''(po_products.orderedDeliveryDate)'' -- въвежда се през формата за продукт във ВП; показва се само там и в //График//, където служи и за база на изчисляемата колона //Изоставане//. * **Наша възм. дата доставка / Прогнозна дата доставка** ''(po_products.estDeliveryDate)'' -- въвежда се през формата за продукт във ВП; показва се там, както и: * в //График//, където служи и за база на изчисляемата колона //Изоставане// -- разликата между изискана и прогнозна дата; * в //PO Confirmation// под името **Estimated Delivery Date / Прибл.дата на доставка**; * в етикети на пратки/колети (PDF, вариант //KT-HBE// като **Delivery Date**). ==== Входяща поръчка > Изпълнители - ПАРТИДИ ==== * **Искана дата на готовност на изпълнителя** ''(po_contractors.requestedDispatchDate)'' -- въвежда се първоначално през формата за партида във ВП. Може да се променя впоследствие по няколко начина: * в //Изходяща поръчка за стоки//, чрез бутон ''Промени дати'', ако ИПС все още не е изпратена; * в //ИПС//, когато е в режим //Корекция// след като е била веднъж изпратена, може да се променя датата на определена партида, при което се изпраща имейл известие до доставчика * Визуализира се във ВП, както и в: * //График// (под името **Заявена дата**) * //Изходяща поръчка за стоки// -- в първия таб (//Предмет на поръчката - партиди//, колона **За искана дата**), както и в таб //Корекции// (ако има такива) * //ИПС -- печатна форма//\\ (англ: **Our Order Lot:** ''poutNr'' – for dispatch on ''requestedDispatchDate'')\\ (бълг: **Поръчкова партида** ''poutNr'' – за дата ''requestedDispatchDate'');\\ тази дата определя и подредбата на партидите при отпечатването на ИПС * //ИПС -- корекция//, имейл известие\\ (англ: **Readiness for dispatch on** ''new-requestedDispatchDate'')\\ (бълг: **датата за готовност на стоката за експедиция** – на ''new-requestedDispatchDate''; **За готовност на** ''new-requestedDispatchDate'') * //Дати на готовност// -- първа колона **за искана дата**; не може да се променя. * **Реална дата на готовност** ''(po_contractors.completionDate)'' -- първоначалната си стойност приема автоматично равна на въведената за **Искана дата на готовност** през формата за нова партида във ВП.\\ Може да се променя впоследствие чрез сведението //Дати на готовност//, като за момента уведомление до доставчика не се изпраща, но е предвидено да се добави и такава функция.\\ Визуализира се на много места: * във ВП, таблица //Партиди//; * в ИПС, таблица //Партиди// (вкл. и при //Корекция//), колона **За реална дата**; * //График// -- **Реална дата**; * //Дати на готовност// -- предпоследната (и редактируема) колона;\\ да се знае, че стойността в последната колона **Срок +/-** представлява разликата между тези 2 дати -- реквизит на партидата ''(POC.completionDate - POC.requestedDispatchDate)'',\\ докато стойността на колоната **Изоставане** в //График// е разликата на двете дати от поръчаното от клиента ''(POP.orderedDeliveryDate - POP.estDeliveryDate)''.\\ По реална дата се прилага и филтъра на сведението (от дата/период); По тази дата се сортират редовете в сведението по подразбиране. * //Фактура (Основание/Продукти)// в колона **Реална дата експедиция**; * в етикети на пратки/колети (PDF, вариант //KT-HBE// като част от реквизита **Delivery Note:** ''[completionDate]-[ordNr]'', също и в баркод при //KT-HBE// и //TED//); * //Поръчка за превоз >> Пратки >> Партиди// -- колона **Дата на готовност**\\ (също така там се използва за валидация, дали въведената **Дата за натоварване** (на пратката) е по-късно от най-късната дата на готовност на всяка от партидите в пратката); * //Поръчка за прием/експедиция в склад >> Пратки >> Партиди// -- колона **Дата на готовност**; * //Поръчка за обединяване на пратки в транзитен склад >> Пратки >> Партиди// -- колона **Дата на готовност**; * //Пратки >> Партиди// -- колона **Дата на готовност**; * //Досие на пратка >> Дата на експедиция// -- най-късната дата на готовност на всяка от партидите в пратката; * Както и в следните печатни документи: * //Фактура// -- като **Dispatch Dates (Дати на експедиция)** -- изброени всички реални дати на готовност на фактурираните партиди по дадена входяща поръчка * В имейл уведомлението, изпращано до доставчик заедно с приложения PDF с етикети, в следния текст:\\ //...стоките, съставляващи тази пратка – по тази наша поръчка, следва да са готови за експедиция (най-късно) на [completionDate]// ===== ИЗХОДЯЩА ПОРЪЧКА ЗА СТОКИ ===== * **Дата на поръчката** ''(mfg_orders.moDate)'' -- ръчно въвеждане при създаване на нова поръчка * **Дата на потвърждаване от изпълнителя** ''(purchase_orders.moConfirmedDate)'' -- наскоро въведено поле ''[MAS-33369]''. Може да се въвежда по-късно, дори и за вече изпратени поръчки. Има се предвид датата, на която изпълнителят е потвърдил получаването на поръчката като цяло, а не конкретната дата (искана или реална), с която се е ангажирал за конкретна партида. Визуализира се в списъка //ИПС// (колона **Потвърдена**), както и в //График// (**Дати на експедиция** / **Потвърд. изпълнител**) За новосъздадени, неизпратени поръчки, е достъпен бутона ''Промени дати'', с който може да се смени **Искана дата на готовност на изпълнителя** ''(requestedDispatchDate)'' -- реквизит на партидата, описан по-горе, а с това автоматично се променя и **Реална дата на готовност** ''(completionDate)''. За вече изпратени поръчки, тези 2 дати може да се променят чрез режим //Корекция//, и при потвърждаване на корекцията се изпраща по имейл уведомление до Изпълнителя. * ''(mfg_orders.sent_at)'' -- автоматично се записва датата, на която (последно) е изпратена ИПС -- оригинал или нейна корекция. ===== ПРАТКИ ===== Следните дати са реквизити не на конкретна партида, а общо за цялата пратка, в която са включени една или повече партиди. Нещо повече, те не са обвързани дори само с пратката като цяло, а са отделни за всеки превоз на тази пратка към различни дестинации (междинни или крайна). Въвеждат се през формата за създаване на //Поръчка за превоз//. * **Дата за НАТОВАРВАНЕ** ''(shipments_transport.shipLoadingDate)''.\\ Използва се и като ред на сортиране на пратките в документа //Поръчка за превоз//.\\ Не може да бъде въведена като по-ранна от най-късната дата на готовност на всяка от партидите в пратката.\\ Показват се в //Поръчка за превоз// като част от следния текст: \\ - за товарене на: ''[loadingDates]'' (изброяване на отделните дати за всички участващи пратки)\\ - товарене на ''[loadingDate]'', възможно от ''[loadingTimeFrom]'' до ''[loadingTimeTo]'' -- час за явяване на автомобил в готовност за вдигане на товара;\\ - доставка на ''[deliveryDate]'' ''[deliveryTerm]''\\ Най-ранната такава дата от всички пратки в една трансп. поръчка се записва към поръчката за превоз като **Дата 1-во вдигане** ''(service_orders.firstPickupDate)'', но изглежда, че това се показва единствено в списъка на ИП за превоз.\\ Най-ранната такава дата от всички пратки/превози в състава на един //Транспортен документ// се показва в списъка ТД под същия етикет (Дата 1-во вдигане)\\ * **Начало на товарене най-рано/най-късно** ''(shipments_transport.shipLoadingTimeFrom .shipLoadingTimeTo)''. * **Дата за ДОСТАВКА** ''(shipments_transport.shipDeliveryDate)''. Показва се в //Поръчка за превоз//, //Досие на пратка// //(следва продължение...)//