Produktgruppe gibt Belegauswahl an

Lars Mx

Hallo ich habe zu folgender Thematik ein Frage vielleicht hat ja jemand eine Idee. Danke fürs Lesen.
Bei meinem Kunden dient der Kundenauftrag auch gleichzeitig der Produktionsvorbereitung. Daher enthält jeder Auftrag auch nur Produkte einer Gruppe. Zum Beispiel können es einfache Rollos sein. Es gibt für jeden Arbeitsgang, der für die Fertigung notwendig ist, ein Produktionspapier. Diese Info ist in einer UDT hinterlegt. Darum habe ich mir ein Formular (siehe Anhang) gebastelt, dass vom Kundenauftrag heraus aufgerufen wird. Ein kleines Programm ändert dann per SQL die Anzahl (0 oder 1) der einzelnen Layouts.
Das Problem dabei ist die unbequeme Steuerung. Vergisst man nämlich vor dem Drucken das Druckauswahl-Form aufzurufen, dann wird auch nicht die Printdefinition geupdated. Die Folge sind dann falsche Unterlagen für die Fertigung.
Das Ziel wäre es ein ähnliches Formular direkt vor dem Start des Druckauftrags zu schalten. In ähnlicher Weise der Funktion, die es schon für mehrere Printdefinitionen schon gibt.
Ich denke auch, dass so eine Funktion in vielen anderen Fällen Anwendung finden könnte.


Attachment
[url=http://www.coresystems.ch/wp-content/../wp-content/forum-image-uploads/larsmx/Druckauswahl.jpg]Druckauswahl.jpg[/url]

Philipp Knecht

Hallo Lars

Dafür gibts mehrere Lösungsansätze:

Ja für diesen Zweck ist eigentlich das SelectGrid gedacht.

Über mehrere Printdefinitionen könnte man die Anforderung ev. auch lösen.

Ansonsten gibts jetzt auch noch ne Copy Query welche ien Eingabe vor jedem Druck erfordert (Anzahl Kopien).

Oder du machst ein Dummylayout und startest von dem her dein Form.
(über ...ActivateMenuItem(...) )
Dieses Layout hängst du dann als erstes in die Printdef rein .

Oder

Lars Mx

Ich habe vielleicht noch ein paar wichtige Informationen unterschlagen. Darum habe ich noch die Printdefinition für diese Druckauswahl angehängt. Der Benutzer hat die Möglichkeit die vorgegebene Selektion zu ändern, zum Beispiel wenn er nur einen einzelnen Fertigungsbeleg benötigt. Diese temporäre Info wird in einer weiterer UDT gespeichert, die dann durch die NumOfCopy - Queries abgefragt wird. Solch eine Abfrage findet sich ebenfalls im Anhang.

Wenn ich richtig liege, scheitet damit SelectGrid & DummyLayout aus. Vielleicht ist CopyQuery die Lösung, diese Funktion kenn ich noch nicht.

Danke!

Attachment
[url=http://www.coresystems.ch/wp-content/../wp-content/forum-image-uploads/larsmx/Druckauswahl_Printdefinition.jpg]Druckauswahl_Printdefinition.jpg[/url]

Lars Mx

Noch die NumOfCopy - Abfrage

Attachment
[url=http://www.coresystems.ch/wp-content/../wp-content/forum-image-uploads/larsmx/Druckauswahl_Query.jpg]Druckauswahl_Query.jpg[/url]

Philipp Knecht

Hi Lars

Deine NumOfCopy Query ist schon eine solche Copyquery :)
Dies sollte dennoch alles mit einem SelectGrid lösbar sein.
Man kann dann auch steuern dass das SelectGrid nach dem Betätigen des Druck Buttons nur kommt wenn gewisse Konditionen erfüllt sind und ansonsten normal Drucken (Z.B. kann man mit dem designer auch beispielsweise das Druckdatum des Prodauftrages in ein UDF zurückspeichern...)

hth

Lars Mx

Sorry, aber so ganz versteh ich das noch nicht.
In meinem Form kann ich dank der ComboBoxen beliebig wählen welche Layouts ich drucken möchte und außerdem gibt die Produktgruppe eine mögliche Vorauswahl vor. Das SelectGrid bietet mir doch höchstens die Möglichkeit 1 oder mehrere Layouts vor dem Druck zu selektieren.

Könnt ihr denn nicht so ein Fenster gern mit Check- oder Combobox vorschalten.
So kann man den Ausdruck bei einer Printdef mit mehreren Layouts doch super schön steuern. Kann mir gut vorstellen, dass es für viele Anwender ein Thema ist.

Philipp Knecht

Hi Lars

Für diesen Fall haben wir ja eben diese Copy Queries (Welche du ja auch schon verwendest) gemacht.

Nur greifen deine Queries halt auf deine eigene Tabelle zu wo du gewisse Einstellungen jeweils vor dem Druck noch machen möchtest.

Du hast meiner Meinung nach alternativ zu deiner umgesetzten Lösung folgende alternativen:

Variante 1 (Copyqueries mit Aufragsmaskenparameter):
Du machst diese Einstellungen direkt auf der Maske (Auftrag) mittels UDF
oder ungebundenen Feldern welche du per coresuite customize oder so plazierst und basierst nun deine Copyqueries auf diesen Feldern (müssen nicht mal gespeichert werden weil sie ja auch als Parameter ausgelesen werden können)

Vatiante 2 (Select Grid):

Ein Selectgrid welches die Layouts und die Anzahl Kopien aufführt.
Diejenigen die nicht gedruckt werden sollen kannst du dann mit "0" überschreiben.
Die Anzahl Kopien liest du dann wieder mittels Copyquery aus.

Variante 3 (Layout startet deine Maske):

Mach ein Layout welches im Generatescript deine Maske öffnet.
Dieses Layout hinterlegst du dann der Printdefinition und somit wird es immer beim Druck gestartet. (Du kannst es ja dann auch verfeinern damit dieses layout nur bei relevanten Aufträgen gestartet wird (CopyQueries))

hth
0

Comments

0 comments

Please sign in to leave a comment.

Didn't find what you were looking for?

New post