Crystal Report inkl. Archivieren in modul_auftr_pos

Fragen und Hinweise zum Programmdesigner-Modul

Moderator: codegarden

1acal
Beiträge: 21
Registriert: Donnerstag 2. Dezember 2010, 17:24

Crystal Report inkl. Archivieren in modul_auftr_pos

Beitragvon 1acal » Freitag 16. September 2016, 13:25

Hallo codegarden,

ich möchte gerne im Modul modul_auftr_pos einen Crystal Report einbinden, der auch achiviert wird.
Ich habe den Report unter "Reporteinstellungen"->Verkauf->Aufträge->Positionen eingetragen.
Im Formularmanager habe ich diesen Report angelegt, die Dokumentenarchivierung aktiviert, und als Verwendung 'D' eingetragen.
in modul_auftr_pos habe ich einen Button erstellt, um diesen Report aufzurufen. Der Aufrufcode ist dann:

Code: Alles auswählen

   Dim auftrnr As String = KON.GetContextField("AUFTR_POS.Auftrnr")
   
   pdia = New CG.Framework.Tools.Printing.printapi(KONAPP,auftrnr,"D","DGUV")
   pdia.Showdialog()

Beim Aufruf bekomme ich zunächst die Fehlermeldung: "Bestellinformationen Fehlerhaft"
Dann öffnet sich der Print-Dialog ohne die Auswahl von "DGUV" als Beleg.
Ich kann diesen manuell auswählen, was zur Fehlermeldung "Falsche Auftragsart in AB ..." führt.
was mache ich falsch, wie funktioniert das richtig, bzw. gibt es ein funktionierendes Beispiel zum "Abgucken"?
Danke und Gruß

1acal
FWENZL
Beiträge: 658
Registriert: Freitag 15. August 2008, 12:06

Re: Crystal Report inkl. Archivieren in modul_auftr_pos

Beitragvon FWENZL » Freitag 16. September 2016, 22:11

Hallo 1acal,

die Lösung scheint mir grundsätzlich korrekt zu sein.

So auf den ersten Blick fällt mir nur die Auftragsart "D" auf.
Soweit ich mich erinnere gibt es nur "A" Auftrag und "B" Bestellung als Auftragsarten. Diese sind so festgelegt.
Das "D" nicht erlaubt ist, würde auch zur Fehlermeldung passen.

Ich kann Montag mal genau nachsehen.

Gruss,
Frank
1acal
Beiträge: 21
Registriert: Donnerstag 2. Dezember 2010, 17:24

Re: Crystal Report inkl. Archivieren in modul_auftr_pos

Beitragvon 1acal » Montag 19. September 2016, 07:00

Hallo Frank,

es ist tatsächlich so, daß das "D" zum Fehler führt.
Ich wollte damit vermeiden, daß dieser Report auf Auftragsebene zusammen mit AB, LS etc. erscheint.
Da ich die pdia-Auswahlmaske aber eigentlich gar nicht brauche habe ich nochmal ein wenig geschaut, und habe mir von den Mahnungen die Methode DoFormular abgeschaut.
Also in etwa so:

Code: Alles auswählen

pdia.DoFromular(0,"DGUV",kdnr,selsql,True,0,0,0,1)

Das funktioniert soweit auch, allerdings würde ich gerne das Dokument auch im DMS sehen, da ich im Belegarchiv, also in der Tabelle BUCH_BELEGE keine Zuordnung zur Position hinbekomme.
Das hätte ich dann im DMS gemacht indem ich in der Tabelle DMS_ARCHIV unter "Reference" die entsprechende Posguid eingetragen hätte.
Wie wäre die Archivierung im DMS zu aktivieren - oder gibt es eine bessere Möglichkeit?
(Ich hatte alternativ überlegt eine Spalte "Pos" zur Tabelle BUCH_BELEGE hinzuzufügen, kann aber nicht abschätzen ob das nicht zu Fehlern führen würde)
Danke und Gruß

Gunnar
FWENZL
Beiträge: 658
Registriert: Freitag 15. August 2008, 12:06

Re: Crystal Report inkl. Archivieren in modul_auftr_pos

Beitragvon FWENZL » Montag 19. September 2016, 08:53

Hallo Gunnar,

die Archivierung sollte funktionieren, wenn in den Formulareinstellungen
die Einstellung "Dokumentenarchivierung" für das entsprechende Formular aktiviert ist.

Gruß,
Frank
1acal
Beiträge: 21
Registriert: Donnerstag 2. Dezember 2010, 17:24

Re: Crystal Report inkl. Archivieren in modul_auftr_pos

Beitragvon 1acal » Montag 19. September 2016, 15:55

Hallo Frank,

der Haken bei Dokumentenarchivierung ist aktiviert. Das Formular landet trotzdem nur im Belegarchiv aber nicht im DMS.
Kann es sein, daß bei DoFromular die Archivierung im DMS nicht erfolgt? - die Mahnungen landen auch nicht im DMS, genauso wie die Stornierungen, die auch über DoFormular erzeugt werden.
Oder muss hierfür noch eine Eigenschaft in pdia gesetzt werden? - Ich habe nichts finden können.
Danke und Gruß

Gunnar
FWENZL
Beiträge: 658
Registriert: Freitag 15. August 2008, 12:06

Re: Crystal Report inkl. Archivieren in modul_auftr_pos

Beitragvon FWENZL » Dienstag 20. September 2016, 09:10

Hallo Gunnar,

versuchen Sie bitte folgende Code um den Beleg in das DMS einzutragen:

Code: Alles auswählen

Dim printid as Object = pdia.DoFromular(0,"DGUV",kdnr,selsql,True,0,0,0,1)
If printid Is Nothing OrElse printid = -1 then Exit Sub

Dim arg(1) As Object
arg(0) = ""
arg(1) = printid
myapp.gScriptHost.IInvoke("scriptcode", "RegisterBelegidDms", arg)


Gruß,
Frank
1acal
Beiträge: 21
Registriert: Donnerstag 2. Dezember 2010, 17:24

Re: Crystal Report inkl. Archivieren in modul_auftr_pos

Beitragvon 1acal » Dienstag 20. September 2016, 13:14

Hallo Frank,

das funktioniert (habe dabei myapp durch KONAPP ersetzt...) - Danke für die schnelle Hilfe.
Gruß

Gunnar

Zurück zu „Programmdesigner“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste