type conversie: decimal * text

Adriaan2k
Member Posts: 159
Hallo, kan iemand mij helpen met hetvolgende: ik heb al eerder een vraag gesteld mbt afronding, maar nu loop ik tegen onderstaande probleem aan. In een report dient te komen:
IF ((Item."Maximum Inventory"-berekend)/Item."Order Multiple")>1 THEN
voorstel:=Item."Order Multiple"* format((Item."Maximum Inventory"-berekend)/Item."Order Multiple",0,'<decimals,0>');
Het betreft een report voor een voorstel inkoop/produktie. In de formule
dient het stukje (Item."Maximum Inventory"-berekend)/Item."Order Multiple") afgerond te worden op een heel getal zonder decimalen. Als ik echter de FORMAT gebruik die ik op mijn eerdere post heb gekregen, dan komt de foutmelding: Type conversie: Decimal * Text.
Kan iemand mij hierbij helpen ? Alvast bedankt. :?
IF ((Item."Maximum Inventory"-berekend)/Item."Order Multiple")>1 THEN
voorstel:=Item."Order Multiple"* format((Item."Maximum Inventory"-berekend)/Item."Order Multiple",0,'<decimals,0>');
Het betreft een report voor een voorstel inkoop/produktie. In de formule
dient het stukje (Item."Maximum Inventory"-berekend)/Item."Order Multiple") afgerond te worden op een heel getal zonder decimalen. Als ik echter de FORMAT gebruik die ik op mijn eerdere post heb gekregen, dan komt de foutmelding: Type conversie: Decimal * Text.
Kan iemand mij hierbij helpen ? Alvast bedankt. :?
mvg Adriaan
0
Comments
-
Hi Adrian,
Probeer het zovoorstel:=Item."Order Multiple"* ROUND((Item."Maximum Inventory"-berekend)/Item."Order Multiple",1);
0 -
Albertvh wrote:Hi Adrian,
Probeer het zovoorstel:=Item."Order Multiple"* ROUND((Item."Maximum Inventory"-berekend)/Item."Order Multiple",1);
mvg Adriaan0 -
Kun je me misschien helpen waarom onderstaande code het niet doet ? ik heb dit in een report maar ik krijg het niet voor elkaar dat de waarde wordt berekend als min.bestelaanta en max.bestelaantal 0 zijn. Dan blijft mijn berekende voorstel ook 0. Ik heb onderstaande als code:
//
IF berekend < Item."Reorder Point" THEN IF Item."Order Multiple"=0
THEN BEGIN
IF Item."Minimum Order Quantity"+
Item."Maximum Inventory"+ Item."Order Multiple"=0 THEN
voorstel:= Item."Maximum Inventory"-berekend ELSE
IF Item."Minimum Order Quantity" >(Item."Maximum Inventory"-berekend) THEN
voorstel:=Item."Minimum Order Quantity" ELSE
IF Item."Maximum Order Quantity"<(Item."Maximum Inventory"-berekend) THEN
voorstel:=Item."Maximum Order Quantity";
END;
IF berekend < Item."Reorder Point" THEN IF Item."Order Multiple"<>0
THEN BEGIN
IF ((Item."Maximum Inventory"-berekend)/Item."Order Multiple")>1 THEN
voorstel:=Item."Order Multiple"*ROUND((Item."Maximum Inventory"-berekend)/Item."Order Multiple",1,'>') ELSE
IF 1<((Item."Maximum Inventory"-berekend)/Item."Order Multiple") THEN
voorstel:=Item."Order Multiple";
END;
//
Mocht je hier tips voor hebben, dan houd ik me graag aanbevolen.mvg Adriaan0 -
Hi Adriaan,
Ik zou het zo doen want je doet het
IF berekend < Item."Reorder Point" 2 maal en de Item."Order Multiple"
is 0 of niet.IF berekend < Item."Reorder Point" THEN IF Item."Order Multiple" = 0 THEN BEGIN IF Item."Minimum Order Quantity" + Item."Maximum Inventory"+ Item."Order Multiple" = 0 THEN voorstel:= Item."Maximum Inventory" - berekend ELSE IF Item."Minimum Order Quantity" > (Item."Maximum Inventory"-berekend) THEN voorstel:=Item."Minimum Order Quantity" ELSE IF Item."Maximum Order Quantity" < (Item."Maximum Inventory"-berekend) THEN voorstel:=Item."Maximum Order Quantity"; END else BEGIN IF ((Item."Maximum Inventory" - berekend) / Item."Order Multiple") > 1 THEN voorstel:=Item."Order Multiple" * ROUND((Item."Maximum Inventory"-berekend) / Item."Order Multiple",1,'>') ELSE IF 1 < ((Item."Maximum Inventory"-berekend) / Item."Order Multiple") THEN voorstel:=Item."Order Multiple"; END;
Albert0 -
Ha Albert, ontzettend bedankt voor je reactie. Ik heb dit getest en heb nog 2 aanpassingen gedaan waarmee het report nu precies berekent wat ik wil.
Zie onderstaand het eindresultaat:
//
IF berekend < Item."Reorder Point" THEN
IF Item."Order Multiple" = 0 THEN BEGIN
IF Item."Minimum Order Quantity" + Item."Maximum Order Quantity" + Item."Order Multiple" = 0 THEN
voorstel:= Item."Maximum Inventory" - berekend
ELSE
IF Item."Minimum Order Quantity" > (Item."Maximum Inventory"-berekend) THEN
voorstel:=Item."Minimum Order Quantity"
ELSE
IF Item."Maximum Order Quantity" < (Item."Maximum Inventory"-berekend) THEN
voorstel:=Item."Maximum Order Quantity"
ELSE
voorstel:= Item."Maximum Inventory" - berekend;
END else BEGIN
IF ((Item."Maximum Inventory" - berekend) / Item."Order Multiple") > 1 THEN
voorstel:=Item."Order Multiple" * ROUND((Item."Maximum Inventory"-berekend) / Item."Order Multiple",1,'>')
ELSE
IF 1 < ((Item."Maximum Inventory"-berekend) / Item."Order Multiple") THEN
voorstel:=Item."Order Multiple";
END;
//
Nogmaals erg bedankt voor je hulp. Ik hoop ook anderen op deze manier te kunnen gaan helpen.
ps. ik weet niet hoe je het mooie witte scherm met de groene letters en inspring op het forum krijgt, ik heb gewoon copy en paste gedaan vanuit de Nav code.mvg Adriaan0 -
Hi Adriaan,
Blij dat ik je kon helpen.
Om het witte scherm te krijgen druk op het Code knopje in het Post reply scherm.
Albert0
Categories
- All Categories
- 73 General
- 73 Announcements
- 66.6K Microsoft Dynamics NAV
- 18.7K NAV Three Tier
- 38.4K NAV/Navision Classic Client
- 3.6K Navision Attain
- 2.4K Navision Financials
- 116 Navision DOS
- 851 Navision e-Commerce
- 1K NAV Tips & Tricks
- 772 NAV Dutch speaking only
- 617 NAV Courses, Exams & Certification
- 2K Microsoft Dynamics-Other
- 1.5K Dynamics AX
- 320 Dynamics CRM
- 111 Dynamics GP
- 10 Dynamics SL
- 1.5K Other
- 990 SQL General
- 383 SQL Performance
- 34 SQL Tips & Tricks
- 35 Design Patterns (General & Best Practices)
- 1 Architectural Patterns
- 10 Design Patterns
- 5 Implementation Patterns
- 53 3rd Party Products, Services & Events
- 1.6K General
- 1.1K General Chat
- 1.6K Website
- 83 Testing
- 1.2K Download section
- 23 How Tos section
- 252 Feedback
- 12 NAV TechDays 2013 Sessions
- 13 NAV TechDays 2012 Sessions