2016-04-14 9 views
1

Ich möchte den Saldo (Flowfield) Datensatz von Kundentabelle auf die Bill-Tabelle auswählen. Ich habe eine Kundentabelle und eine BillPros-Tabelle. Der Saldo in der Kundentabelle ist ein Flowfield.Dynamics Nav FlowField und Calcfild

//Customer on Variable Band Billing 
Customers.RESET; 
Customers.SETCURRENTKEY(Customers."No."); 
Customers.SETFILTER(Customers."No.",'%1',MeterR."Customer Number"); 
Customers.SETFILTER(Customers."Customer Posting 
     Group",'%1',Surcharge."Customer Posting Group"); 
Customers.CALCFIELDS("Balance (LCY)"); 
Bal := Customers."Balance (LCY)"; 

IF Customers.FIND('-')THEN 

    //Post Metre Reading; 
     PostReading.RESET; 
     PostReading.Date := MeterR.Period; 
     PostReading.MetreID :=MeterR."Metre ID"; 
     PostReading."Last Reading" := MeterR."Metre Reading"; 
     PostReading.INSERT; 



     //Bill Info Process 
     TotalAmount:=0; 
     BillPros.INIT; 
     BillPros."Customer No." := MeterR."Customer Number"; 
     BillPros.Consumption := TotalReading; 
     BillPros.Rate := Bands."Rate Amount"; 
     BillPros."Invoice No." := MeterR."Invoice Number"; 
     BillPros.Amount := TotalReading*Bands."Rate Amount"; 


     BillPros.Balance := Bal; 

Antwort

0

Ihr Code ist falsch. Sie sollten die CALCFIELDS nach dem FIND ('-') aufrufen. Zuvor haben Sie den eigentlichen Kundendatensatz nicht. Und Sie brauchen die Bal-Variable nicht. Sie können BillPros.Balance: = Customer schreiben. "Balance (LCY)";