gelöst [RTC] Aus einem Bestellvorschlag Anfragen generieren!

17. April 2012 16:01

Hi,
Ich bin neu hier und versuche mich an einer kleinen Umsetzung. Es soll möglich sein aus dem Bestellvorschlag heraus Anfragen erstellen zu können.
An sich klappt die Umsetzung auch.

In der Codeunit 333 wurde eine neue Funktion "SetCreateQuotes" erzeugt:

IF CONFIRM('Anfrage erstellen?',TRUE) THEN
DocumentType := PurchOrderHeader."Document Type"::Quote
ELSE
DocumentType := PurchOrderHeader."Document Type"::Order;



jedoch ist dies keine elegante Lösung, da man beim bestätigen des Buttons "ereignismeldung durchführen" gefragt wird, ob man eine Anfrage erstellen möchte.

Ich würde dies mit einem Optionfeld im Report "Carry Out Action Msg. - Req." 493 realisieren, indem ich durch einen OptionString (Anfrage,Bestellung) wählen kann.
Es wurde dazu eine neue globale Variable "optDocumentType" angelegt.
Wenn ich das richtig verstanden habe, kann ich mit "OptDocumentType = 0" den ersten String "Anfrage" ansprechen.

Meine Frage ist hierbei nun.......wie übergebe ich den OptionString vom Report 493 an die CU 333 ???

Ich würde mich über eure hilfe freuen und verbleibe

MfG
Shibby01
Zuletzt geändert von Shibby01 am 18. April 2012 11:59, insgesamt 1-mal geändert.

Re: [RTC] Aus einem Bestellvorschlag Anfragen generieren!

17. April 2012 17:44

Hallo,

Wir wird denn die Codeunit im Report aufgerufen?

Du kannst entweder eine bestehende Funktion um einen Parameter erweitern oder du baust dir eine neue Funktion in die Codeunit, wo du in eine globale Variable deinen Optionswert ablegst.

Ansonsten gebe es noch andere Möglichkeiten, wenn du damit nicht zurecht kommst.


Gruß
Aydin

Re: [RTC] Aus einem Bestellvorschlag Anfragen generieren!

17. April 2012 21:50

Hi,
die CodeUnit im Report 493 wird durch "ReqWkshMakeOrders" aufgerufen.
Vom Report aus greife ich mit "ReqWkshMakeOrders.SetCreateQuotes" auf die Funktion in der CU 333 zu

die Funktion beinhaltet folgenden Code:

IF CONFIRM('Anfrage erstellen?',TRUE) THEN
IntDocumentType := PurchOrderHeader."Document Type"::Quote
ELSE
IntDocumentType := PurchOrderHeader."Document Type"::Order;

Nur verstehe ich nicht, wie ich den OptionString, wie von ihnen geschildert, übergebe.

Re: [RTC] Aus einem Bestellvorschlag Anfragen generieren!

18. April 2012 08:22

Gemeint war eine neue Funktion in der CU333, die beispielsweise eine Boolvariable setzt, falls Anfragen erstellt werden sollen, und die deine Confirm-Abfrage ersetzt. Diese Funktion müsste dann aus dem Report 493 vor dem Aufruf der CU333 aufgerufen werden. Also sowas wie

Code:
IF CreateQuotes THEN
IntDocumentType := PurchOrderHeader."Document Type"::Quote
ELSE
IntDocumentType := PurchOrderHeader."Document Type"::Order;

, und die Variable CreateQuotes setzt du vorab auf true.

Zu beachten wäre noch, dass die CU333 sich in der Funktion TryCarryOutReqLineAction selbst aufruft. Dort müsste diese Funktion ebenfalls aufgerufen werden, falls Anfragen erstellt werden sollen.

Re: [RTC] Aus einem Bestellvorschlag Anfragen generieren!

18. April 2012 09:18

Hallo,

gib deiner neuen Funktion einen Paramater mit, also "SetCreateQuotes(myOptionValue)".
Vorher natürlich in der Codeunit die Funktion um diesen Parameter erweitern (Ansicht ---> C/A Locals).

Und dann sieht der Code so aus:
Code:
IF myOptionValue = 0 THEN
 IntDocumentType := PurchOrderHeader."Document Type"::Quote
ELSE
 IntDocumentType := PurchOrderHeader."Document Type"::Order;



"MyOptionValue" ist in diesem Fall ein Integer (Boolean würde in deinem Fall ja auch ausreichen).


Gruß
Aydin

Re: [RTC] Aus einem Bestellvorschlag Anfragen generieren!

18. April 2012 11:55

Hi,
vielen Dank für die Hilfe.
Habs nun gelöst. Hab vergessen die Werte des OptionsStrings im Report 493 mit zu übergeben und eine lokale Variable in der SetCreateQuote Funktion in CU 333 anzulegen.

MfG