2011-01-17 11 views
1

Ich versuche, eine Einfügung auf einer Tabelle zu fangen und in einigen spezifischen Fällen stattdessen zu aktualisieren. Wie gehe ich da vor? Ich versuche, dies in Insert-Methode in CustTable-Tabelle zu setzen, aber ich bin mir nicht sicher, wo der Code eingefügt werden soll.Axapta - wie man anstelle der Einfügung aktualisiert

Irgendwelche Ideen?

Thanx, Ivan

Antwort

2

Es ist eine schlechte Praxis Updates anstelle von Einsätzen in der insert-Methode zu tun!
Betrachten Sie die Auswirkungen auf Datenimporte usw.

Ziehen Sie in Erwägung, stattdessen die Logik in das Formular CustTable zu verschieben. Diese

ist der Weg, es zu tun sowieso (in der Tabelle insert-Methode):

void insert() 
{ 
    CustTable t; 
    ttsbegin; 
    if (<condition>) 
    {    
     select forupdate t where ...; 
     t.Name = this.Name; // Saving name only 
     t.doUpdate(); 
    } 
    else 
     super() //does the doInsert() 
    ttscommit; 
} 
+0

Thanx! Ich werde versuchen, diesen Code.Ich versuche es in AIF Web Service Create-Methode zu tun. Ich möchte, dass es nur dann aktualisiert wird, wenn ein Kunde existiert, der von einem äußeren System stammt. –

Verwandte Themen