VBS: Ordrer (OrderController)
jhlAPI.Order.* — opprettelse, henting, oppdatering, levering, godkjenning og
fordeling av ordrer. Største kontrolleren i laget. Rører i hovedsak Ord,
OrdLn, Actor, FreeInf2, Agr (timeføring), samt Connect-DB for planlegger.
Ordreflyt
flowchart LR
NY[CreateNewOrder] --> TILD[AssignOrderToTruck/Driver/Room]
TILD --> LEV[SetOrderAsCompleted<br/>FreeInf2 + GPS + timeføring]
LEV --> GODKJ{Godkjenning}
GODKJ -->|ApproveForInvoice| FAKT[OrdStatus=1<br/>klar for faktura]
GODKJ -->|OrderApproval| CONN[OrdStatus=4<br/>Connect-godkjenning]
classDef sys fill:#f8d7da,stroke:#b53b46
class NY,TILD,LEV,FAKT,CONN sys
sequenceDiagram
autonumber
participant K as Klient (app/konsoll)
participant B as Business.Order
participant S as VismaBusinessServices (SOAP)
participant V as Visma (Ord/OrdLn)
K->>B: CreateNewOrder(order)
B->>S: SaveVismaOrder
S->>V: skriv Ord + OrdLn
K->>B: SetOrderAsCompleted(order)
B->>V: status + FreeInf2 + Agr (timeføring)
Hente / lese ordrer
| Operasjon |
Parametre |
Gjør |
Tabeller |
L/S |
GetOrders |
UserID, typer, CompanyNo |
Alle ordrer for bruker, filtrert |
Ord, OrdLn, FreeInf2, Actor |
L |
GetOrders (GPS) |
lat, lon, radius, filtre … |
Ordrer innen radius fra GPS-punkt |
Ord, OrdLn, Actor |
L |
GetOrders2 |
filtre, søk, OnlyForApproval … |
Hovedmetoden bak de andre — avansert filtrering/søk |
Ord, OrdLn, FreeInf2, Actor, Prod |
L |
GetBottomlineOrders |
filtre, UserID, CompanyNo |
Bottomline-ordrer (Gr11=2) |
Ord, OrdLn, Actor |
L |
GetOrder |
OrderNo |
Én ordre med linjer, dokumenter, GPS |
Ord, OrdLn, FreeInf2, Actor, Prod, Unit |
L |
GetOrderDocuments |
OrderNo |
Vedlegg til ordre |
(SQLRepo) |
L |
GetCustomerHistory |
DeliveryActorNo, typer |
Ordrehistorikk for leveringsadresse |
Ord, OrdLn, Actor |
L |
GetOrdersForApproval |
typer |
Ordrer som venter på godkjenning |
Ord, OrdLn, FreeInf2, Actor |
L |
GetApprovedOrders |
typer, søk |
Allerede godkjente ordrer (topp 50) |
Ord, OrdLn, FreeInf2, Actor |
L |
GetPurchaseOrders |
stockNo |
Innkjøpsordrer (TradeType=6) |
Ord, OrdLn, StcBal, Prod, Actor |
L |
Opprette ordrer
| Operasjon |
Parametre |
Gjør |
Tabeller |
L/S |
CreateNewOrder |
Order, skipChecks |
Opprett ordre (håndterer kundeoppretting, status, timeføring) |
Ord, OrdLn, Actor, Prod, Agr |
S |
CreateNewGeneralOrders |
Collection<Order> |
Bulk-opprett generelle ordrer |
Ord, OrdLn |
S |
CreateNewTankOrder |
Order |
Tank-ordre fra overvåking (spesialtilfelle) |
Ord, OrdLn, Prod |
S |
Oppdatere / fullføre / slette
| Operasjon |
Parametre |
Gjør |
Tabeller |
L/S |
UpdateOrder |
Order |
Oppdater ordre, validér kunde, timeføring |
Ord, OrdLn, Actor, Agr, StrFVar |
S |
SetOrderAsCompleted |
Order |
Marker levert; status + GPS + timeføring |
Ord, OrdLn, Actor, Agr, StrFVar |
S |
DeleteOrder |
OrderNo |
Myk sletting (Gr10=1) |
Ord |
S |
DeleteOrderline |
OrderNo, LineNo |
Slett ordrelinje via VBS |
OrdLn |
S |
ApproveForInvoice |
Order |
Godkjenn for fakturering (OrdStatus=1) |
Ord |
S |
OrderApproval |
Order |
Send til Connect-godkjenning (OrdStatus=4) |
Ord |
S |
(UpdateOrder_obsolete, SetOrderAsCompleted_obsolete er utdaterte — ikke bruk.)
Fordeling og planlegger
| Operasjon |
Parametre |
Gjør |
Tabeller |
L/S |
AssignOrderToDriver |
OrdNo, UserID |
Tildel ordre til sjåfør |
Ord |
S |
AssignOrderToTruck |
OrdNo, TruckID, TrailerID, RouteNo, dato |
Tildel bil/henger/rute |
Ord |
S |
AssignOrderToRoom |
liste |
Tildel ordrer til rom (bottomline) |
Connect-DB |
S |
AssignRoute |
PlannerRoutes |
Opprett/tildel rute |
Connect-DB |
S |
GetPlannerRoute |
dato, bil, henger, rute |
Hent planlagte ruter |
Connect-DB |
L |
Get_AssignedOrderRoom |
RouteID |
Tildelte ordrer for rute |
Connect-DB |
L |
DeleteAssignedOrderToRoom / DeleteAssignedRoute |
liste / rute |
Fjern tildelinger |
Connect-DB |
S |
UpdateOrderETA |
OrdNo, tid |
Sett beregnet ankomst (Inf6) |
Ord |
S |
MoveOrderToNextDay |
OrderNo, UserID |
Flytt til neste leveringsdag |
Ord |
S |
SaveOrderSorting |
liste |
Lagre sorteringsrekkefølge |
Ord |
S |
Pris, kategorier, dokumenter
| Operasjon |
Parametre |
Gjør |
Tabeller |
L/S |
PriceCheckOrder |
liste |
Valider priser mot kundeprisliste |
(VBS) |
L |
GetOrderCategories |
— |
Ordrekategorier |
Txt |
L |
GetOrderZones |
— |
Leveringssoner |
(SQLRepo) |
L |
GetTranporters |
— |
Transportører |
(SQLRepo) |
L |
CustomerDatahostTransactions |
— |
Kunde-transaksjoner fra DataHost |
(SQLRepo) |
L |
InternalOrderDatahostTransactions |
— |
Interne transaksjoner fra DataHost |
(SQLRepo) |
L |
GetInvoicePDF |
InvoiceNo |
Faktura-PDF (base64) |
fil |
L |
OrderDocumentPDF |
filePath |
Ordredokument-PDF (base64) |
fil |
L |
CreateDrivingDirectionURL |
koordinater |
Bygg ruteveiledning-URL |
(config) |
L |
Relaterte sider