De orderregels worden bij ons ingevuld obv een berekening.
Benodigd aantal * overleverpercentage = voorstelaantal.
Dit voorstelaantal wordt overgetypt in het Oorspronkelijke Navision Veld 'Aantal'.
Is het mogelijk om dit veld automatisch te laten vullen obv de berekening of eventuele wijzigingen daarin?
Ik had gehoopt dat dit bv via een OnModify en dan bv VoorstelAantal := Aantal te regelen was, maar ik kom er niet uit.
Natuurlijk moet het Aantal veld wel handmatig te overschrijven zijn.
We gebruiken het Benodigd aantal nu om op de Purchase order te plaatsen, zodat we niet te veel hoeven te bestellen.
Het magazijn kan echter het aantal in het veld 'Aantal' ontvangen, en dit kans dus met een deel overlevering zijn.
Navision 4.0 SP2 | Win 2003 TS
0
Answers
Ik zou hier zeker niet zelf mee gaan klooien met alle risico's van dien.
Even een senior engineer opzetten.
RIS Plus, LLC
Normaal vul je binnen de orderregels in het veld aantal in: 1.000 stuks
Op deze manier verschijnt op de Inkooporder 1.000 stuks
Het magazijn mag dan maximaal 1.000 stuks ontvangen.
In ons geval hebben we bijna altijd een afspraak mbt overlevering.
Bij een bestelling van 1.000 stuks mag de leverancier bv maximaal 1.100 leveren en ook factureren.
Binnen de orderregels heb ik daarvoor extra velden aangemaakt.
Hier vullen we de originele aantallen in die we eigenlijk wilden bestellen (dus 1.000). Vervolgens vullen we het overlever% in (bv 10%).
Dit is niet erg spannend: gewoon 2 veldjes met een berekening.
In de orderregels wordt dan een berekening gemaakt dat het aantal voor Navision 1.100 moet zijn. Dit voorgestelde aantal wordt op dit moment overgetypt in een veldje verder, namelijk het Aantal veld dat standaard al in Navision zat.
De 1.000 stuks van het nieuwe veld komen op de Inkooporder, en het magazijn kan nu maximaal 1.100 ontvangen.
Voor ons is dit een zeer flexibele eenvoudige werkzame oplossing.
Nu gaat het dus enkel om het overtypen van het veldje 'Voorgestelde Aantal' naar het standard Navision veld 'Aantal'.
Ik blijf dus binnen de orderregeltabel en wil eigenlijk alleen maar 1 handeling overbodig maken.
Heel vaak wordt namelijk het berekende aantal (voorstel) 1:1 overgenomen in het Aantal veld.
Natuurlijk kan het ook zijn dat jullie dit al hadden begrepen en dat het dus nog steeds niet mogelijk is, maar ik denk dat ik een heel eenvoudig iets veel te omslachtig en onduidelijk heb uitgelegd. Sorry voor mijn uitlegkunsten ;-).
Groeten, Fabian
Als het altijd is kun je volstaan met de OnValidate trigger van Voorgesteld Aantal met de vode Validate(Aantal, Voorgesteld Aantal)
In de Source expression in het Form staat bij de Variabele "Voorstel Aantal":
"Overlever Basis"+("Overlever Basis"/100)*"Overlever %"
Wat ik waarschijnlijk moet doen is deze berekening verplaatsen naar de Tabel. De berekening zal niet veel anders zijn (hooguit nog wat IF THEN's om het wat netter te maken bij ontbreken van waarden).
Wat is de beste locatie om deze berekening te plaatsen?
Het lijkt mij ook weer in de [Overlever Voorstel - OnValidate()].
Als het 'Voorstel Aantal' veld wijzigt obv de berekening kan ik onderstaande code idd gebruiken en dan geloof ik wel dat het werkt :-).
OnValidate trigger van "Voorstel Aantal" met de code Validate(Quantity, "Voorstel Aantal")
Stel je hebt een order voor 1000 stuks, en er komt in werkelijkheid 1050 binnen. Dan zou je op de Leverancierkaart (of purchase & payable setup, of waar dan ook) een 'toegestaan overleverantie percentage' waarde hebben. Het systeem checkt of de waarde binnen die grens ligt, en intern wijzigt die dan de order tot precies de waardes die zijn ingegeven. Dus stel de leverancier heeft 10%, dan kijkt het systeem 'we mogen 1100 ontvangen voor deze leverancier', en gaat vervolgens de order heropenen, aantal aanpassen, en weer releasen. Voor dit voorbeeld is dat redelijk eenvoudig, en dat kan je zo ingewikkeld maken als nodig is.
Het voordeel van deze methode is dat als je alles hebt ontvangen, wordt de order meteen volledig verwerkt. Er zijn op die manier geen 'backorder' waarden, omdat je niet kunstmatig het aantal hoog houdt voor het geval dat je meer ontvangt.
RIS Plus, LLC
Ja inderdaad zou ik het ook in een validatie trigger doen. Je kan ook een hybride oplossing doen, waar je op de lijn de toegestane waarde uitrekent, en bij het ontvangen kijkt of het daadwerkelijk ontvangen aantal gelijk of kleiner is dan die waarde, en dan order heropen, aantal aanpassen, en weer sluiten. Dan kan je mooi in een loopje doen aan het begin van de boeking.
RIS Plus, LLC
Het werkt perfect voor het invoeren van de Orderaantallen.
Bij het ontvangst kan echter ook minder dan de maximale overlevering geleverd worden. In dat laatste geval is het handiger om alleen het Orderaantal te hoeven aanpassen, dan om een passende berekening te maken via het voorstel en een percentage.
In dat geval zou namelijk ook de origineel uitgezette orders niet meer inzichtelijk / terug te vinden zijn.
Natuurlijk kan ik in de berekening ook nog een veld invoeren ter correctie of afronding van de uiteindelijk binnengekomen aantallen, maar daar moet ik nog even over nadenken of dat alles oplost... en of dat mogelijk is.
Alvast super bedankt voor de uitleg, dit kan ik in de toekomst in meerdere situaties toepassen!