Report mit fortlaufender Nr. (CC)

29. Oktober 2018 11:00

Hallo zusammen,

ich bin relativ neu in der Programmierwelt von Navision und hab nun meine erste "große" Aufgabe erhalten.

Wie im Titel beschrieben geht es um ein Report mit fortlaufender Nummer im Classic Client von Navision 2009.

Folgende Situation:

Wir sind ein medizinischer Großhandel und erhalten täglich viele Rezepte, die mit einem Barcode versehen werden (fortlaufende Nummer).
Diese Etiketten werden bisher von Hand auf das Rezept geklebt und sollen jetzt aber darauf gedruckt werden (Kosten- und Zeitersparnis).

Daher benötige ich ein Report, welcher eine Fortlaufende Nummer erstellt und auf das Rezept druckt.
Ich gehe davon aus, dass ich ebenfalls eine Tabelle benötige, wo die fortlaufende Nummer eingetragen wird, damit am nächsten Tag bei der richtigen Nummer weiter gedruckt wird.

Hat jemand Ideen oder Erfahrung mit sowas oder ähnlichem und kann mir helfen?

Vielen Dank im Vorraus!

LG
Steffen

Re: Report mit fortlaufender Nr. (CC)

29. Oktober 2018 11:44

Hallo,

das erste Thema ist der Drucker.
Wie druckst du den Barcode einzeln oder im Stapel. D.h. hast du einen Drucker, in den du die Rezepte im Stapel einlegen kannst, oder machst du das wie die Apotheke vor Ort, indem du jedes Rezept einzeln einlegst?

Das zweite Problem ist der Druckvorgang selbst.
Es kann bei einem Drucker immer das Problem geben, dass ein Papierstau oder Fehldruck auftritt (gerade, wenn das Papier nicht frisch aus dem Paket kommt, sondern auf diversen (um)Wegen zu euch gelangt).
NAV kann im Standard nicht kontrollieren, ober der Druck auch tatsächlich erfolgt ist. D.h. du setzt einen Druckjob ab, und hoffst das etwas gedruckt wird, wenn nicht, kannst du dass nicht ermitteln.

Wenn du einem bestimmten Rezept einen bestimmten Barcode zuordnen möchtest/musst, dann musst sehr viel Aufwand treiben um das sicherzustellen.

Das einfachste ist die fortlaufende Nummer, die kann man über eine Nummernserie und die Codeunit 396 NoSeriesManagement erzeugen.

Gruß Fiddi

Re: Report mit fortlaufender Nr. (CC)

29. Oktober 2018 11:53

Hallo Fiddi,

vielen Dank für die super schnelle Antwort!

Also wir würden die Rezepte in einen kleinen Desktop Drucker legen (nicht einzeln wie in der Apotheke).

Das mit den fehlerhaften Drucken habe ich nicht gewusst. Bedeutet dies, wenn ich z.B. Seitenzahl 20 mache und der Drucker nach 2 Seiten ein Papierstau bringt, Navision dennoch 18 weitere Nummern vergibt und ich diese nicht mehr nachdrucken kann?

fiddi hat geschrieben:Das einfachste ist die fortlaufende Nummer, die kann man über eine Nummernserie und die Codeunit 396 NoSeriesManagement erzeugen.


Das klingt schon mal gut, nur weiß ich wirklich nicht wo ich Anfangen muss.

Kannst du mir hier evtl. helfen oder ein nützlichen Link zukommen lassen?

Vielen Dank

Re: Report mit fortlaufender Nr. (CC)

29. Oktober 2018 12:12

Zur Nummernserienverwaltung gibt es hier ein kleines Tutorial:
https://navision24.de/blog/nummernserie ... ltung.html

Re: Report mit fortlaufender Nr. (CC)

29. Oktober 2018 12:25

Das mit den fehlerhaften Drucken habe ich nicht gewusst. Bedeutet dies, wenn ich z.B. Seitenzahl 20 mache und der Drucker nach 2 Seiten ein Papierstau bringt, Navision dennoch 18 weitere Nummern vergibt und ich diese nicht mehr nachdrucken kann?


genau das.!

Gruß Fiddi

Re: Report mit fortlaufender Nr. (CC)

29. Oktober 2018 12:38

Hallo Peter,

auch dir Vielen Dank für die schnelle Antwort!

Ich habe mir das Tutorial bereits im vorfeld angesehen, jedoch komme ich so auch nicht weiter.

Wie schaffe ich es denn, dass bei jedem Druck eine neue fortlaufende Nummer aus der Codeunit erstellt wird und diese dann auch "gespeichert" wird, damit an der selben Stelle weiter gemacht wird?

Vielen Dank

Re: Report mit fortlaufender Nr. (CC)

28. November 2018 16:08

Hat denn sonst noch einer eine Idee und kann mir helfen?

Re: Report mit fortlaufender Nr. (CC)

28. November 2018 17:17

Wozu brauchst du denn die fortlaufenden Nummern auf den Rezepten?

Re: Report mit fortlaufender Nr. (CC)

28. November 2018 17:18

Hallo,

ich würde folgendes tun:

ich würde mir so etwas wie einen Meto Preisauszeichner holen, die gibt es auch als reinen Spender.
Dann einen Etikettendrucker, der dir passende Etiketten mit Barcode und fortlaufender Nr. bedruckt auf eine Rolle aufwickelt (falls es so etwas nicht schon fertig dafür gibt).
Diese Etiketten knallst du dann mit dem Spender auf deine Rezepte, und ordnest diese anhand des Barcodes oder der Nr. später deinem Auftrag zu. (Nach dieser Methode, mit dem hinterher zuordnen, arbeiten im übrigen auch Archivsysteme)
Das ist die sicherste Methode, da du hinterher sehen kannst, ob eines fehlt, und irgendwelche technischen Probleme werden auch ausgeschlossen (außer du hast ein Etikett Beim bekleben beschädigt).

Gruß Fiddi

Re: Report mit fortlaufender Nr. (CC)

28. November 2018 18:04

@M_Schneider Die Barcodes kommen auf die Rezepte, damit diese dann in Saperion (DMS) automatisch richtig zugeordnet werden

@fiddi Danke für dein Vorschlag, jedoch bekleben wir bisher schon die Rezepte immer von Hand und wollen aus Kosten und Zeitsparungsgründen davon weg.
Die Rollen mit den Barcodes kaufen wir bisher immer ein (sehr teuer, da eine eigene Nummernserie verwendet wird).
Da wir aber am Tag ca. 150 neue Rezepte erhalten, wäre es schneller diese in einem Drucker zu bedrucken anstatt alle einzeln in die Hand zu nehmen.

Danke und Gruß

Steffen

Re: Report mit fortlaufender Nr. (CC)

28. November 2018 18:17

Da wir aber am Tag ca. 150 neue Rezepte erhalten, wäre es schneller diese in einem Drucker zu bedrucken anstatt alle einzeln in die Hand zu nehmen.


Das vermeidest du ja gerade mit dem Auszeichner. Du musst eben gerade nicht jedes Etikett in die Hand nehmen.
Ein geübter Anwender wird nicht länger als 10 Minuten für eure 150 Rezepte benötigen mit dem Gerät.

Gruß Fiddi

Re: Report mit fortlaufender Nr. (CC)

29. November 2018 10:59

Danke Fiddi für deine Bemühungen, aber mein Chef möchte leider das wir die Rezepte in Zukunft bedrucken.

Und dazu benötige ich eine Form und eine Tabelle (Form wo definiert wird wo genau er was drucken soll auf dem Rezept und eine Tabelle wo die fortlaufende Nummer automatisch eingetragen wird)

Ich hoffe mir kann dennoch jemand dabei helfen.

Ich danke euch für eure bisherigen Bemühungen.

Re: Report mit fortlaufender Nr. (CC)

29. November 2018 14:07

Steffen W. hat geschrieben:Danke Fiddi für deine Bemühungen, aber mein Chef möchte leider das wir die Rezepte in Zukunft bedrucken.



Ein Gedanke hätte ich, aber etwas abseits vom Thema:
Falls dir deine Firma nicht Programming 1 und 2 bei Impuls zahlen kann, vielleicht könnt ihr über GULP einen Freelancer engagieren?
Alternativ nach einem tschechischen oder polnischen NAV Partner gucken, mit einem günstigen Tagessatz (ich glaube 700€ brutto)

Re: Report mit fortlaufender Nr. (CC)

29. November 2018 15:57

Hallo,

@ERP-Berater:

Das Problem ist nicht NAV, sondern die technische Unzulänglickeit des Windows- Systems, das man nicht sicherstellen kann, das auch etwas dorthin gedruckt wurde wo man es hin haben möchte.

Die Lösung kann eigentlich hier nur sein, einen POS- Drucker mit Belegdruck z.B. "EPSON TM J7700" (so etwas ähnliches benutzen die Apotheken auch).

Den Drucker kann man direkt über eine Schnittstelle ansteuern.
Dann kann man dem Drucker die Druckkommandos für jedes Rezept einzeln direkt schicken, und vorher/hinterher prüfen, ob Papier drin liegt, und ob der Druck auch auf dem richtigen Beleg durchgeführt wurde, und ggf. wiederholen. Das muss aber programmiert werden.

Man könnte die Rezepte auch als Stapel in einen Laserdrucker legen und hoffen das die Patienten die Rezepte auch nicht vorher geknickt oder zerknüllt haben, ansonsten ist dort ein Papierstau und Fehldrucke vorprogrammiert.

Gruß Fiddi

Re: Report mit fortlaufender Nr. (CC)

30. November 2018 10:09

Steffen W. hat geschrieben:Hat denn sonst noch einer eine Idee und kann mir helfen?

OK, wenn du es genau so umsetzen musst, dann so.

Muss außer der letzten Nr. noch was anderes gespeichert werden?
Wenn ja brauchst du eine neue Tabelle. Um nur die letzte Nummer zu speichern, brauchst du wenigstens ein Feld in einer Tabelle.

Das Nachdrucken kann man über den Report klären indem man die Startnr. und die Anzahl vorgibt. Dann kann man zur an einer anderen Stelle wieder anfangen.

Re: Report mit fortlaufender Nr. (CC)

30. November 2018 13:15

fiddi hat geschrieben:Hallo,

<snip>

Das Problem ist nicht NAV....

<snip>

...Das muss aber programmiert werden.



Ich stimme dir zu, das Problem ist nicht NAV als Software, sondern die üblichen Tagessätze von den D-A-CH Partnern, Freiberuflern, die anscheinend für den Threaderöffner's Arbeitgeber Stand heute zu hoch sind, oder?

Daher meine Idee: einen tschechischen Partner beauftragen mit der Gesamtrealisierung: Epson Spezialdrucker kaufen, anschliessen, konfigurieren, Schnittstelle NAV <-> Drucker programmieren, konfigurieren, schulen etc.

Ich versuche nur zu helfen, wenn jemand ein zu kleines Budget und kein internes Knowhow hat, um ein Problem zu lösen (NAV, Windows, Schnittstellen, Hardware, Software etc)

Re: Report mit fortlaufender Nr. (CC)

30. November 2018 14:08

Ich stimme dir zu, das Problem ist nicht NAV als Software, sondern die üblichen Tagessätze von den D-A-CH Partnern, Freiberuflern, die anscheinend für den Threaderöffner's Arbeitgeber Stand heute zu hoch sind, oder?


Ich hoffe, dass diese Auftraggeber ihre Produkte und Dienstleitungen dann auch alle nach Tschechien verkaufen.
Die Kunden in DACH haben ja kein Geld mehr, weil man die Aufträge alle nach Tschechien vergibt.

Re: Report mit fortlaufender Nr. (CC)

21. Dezember 2018 10:41

Hallo,

ist das Problem schon gelöst?

Ich weiß nicht wozu das DMS eine fortlaufende Nummer benötigt - wichtg ist doch eigendlich nur, dass es die Nummer nicht 2 mal gibt oder?
Wenn das wirklich sein muss, wäre das vielleicht ein Weg:

Code:
//Vor dem Report
Barcode:= CU396.TryGetNextNo('BARCODE',TODAY);

//Nach dem Report
IF CONFIRM('Druck in Ordnung?',TRUE) THEN
   CU396.GetNextNo('BARCODE',TODAY,TRUE));


Jedoch ist es wahrscheinlich auch mega nervig 150 mal auf ja zu klicken - ansonsten wird das mit Bordmitteln echt schwierig.

Gruß Matthias

Re: Report mit fortlaufender Nr. (CC)

17. Januar 2019 11:15

Hallo zusammen,

danke nochmal für die ganzen Hilfen.

Leider bin ich noch am gleichen Stand wie davor..

Theoretisch müsste es doch gleich wie Lieferscheinen/Mahnungen usw. sein, das wenn ich z.B. eine Mahnung das 2. mal drucke, dass dann da "2. Mahnstufe" auf dem Report steht?

Wenn ich jetzt also eine Tabelle mit dem Namen "Rezeptzähler" und ein Report mit dem Namen "Rezeptzähler" habe, was genau muss ich denn dann in welchem Trigger eintragen?

Ich habe versucht, dies von den anderen Reports (Mahnungen usw.) abzuleiten, komme aber leider nicht weiter.

LG
Steffen W.

Re: Report mit fortlaufender Nr. (CC)

18. Januar 2019 15:18

Ich/Wir hab die Lösung gefunden, durch die sehr nette Hilfe von @himi81

1. Tabelle mit 2 Feldern (Name: Rezeptzähler)
Feld Name: Nr. -> Primärer Schlüssel
Feld Name: Nr -> Sekundärer Schlüssel

2. Report: (Name: Rezeptzähler)
2.1 Globale Variablen: AnzSchleifen -> Integer
2.2 Globale Variable: Anzahl -> Integer
2.3 DataItem: Rezeptzähler -> Name: Rezeptzähler
Properties: 1. DataItemTable: Rezeptzähler
2. NewPagePerRecord: Yes
2.4 DataItem: Integer -> Name: -> KopieSchleife
Properties: 1. DataItemTable -> Integer
2. DataItemTableView -> SORTING(Number)
3. DataItemLinkReference -> <Rezeptzähler>
4. NewPagePerRecord -> Yes
2.5 DataItem: Integer -> Name: -> SeiteSchleife
Properties: 1. DataItemTable -> Integer
2. DataItemTableView -> SORTING(Number) WHERE(Number=CONST(1))
3. DataItemLinkReference -> <KopieSchleife>


2.6 Request Form: Textfeld erstellt -> Propertie -> SourceExpr -> Anzahl

2.7 CAL/Code:
2.7.1 Rezeptzähler
Code:
Rezeptzähler - OnAfterGetRecord()

AnzSchleifen  := Anzahl;
IF Anzahl = 0 THEN

BEGIN
Anzahl := 1;
AnzSchleifen := 1;
END;


2.7.2
Code:
KopieSchleife - OnPreDataItem()

AnzSchleifen := ABS(Anzahl);
SETRANGE(Number,1,AnzSchleifen);

KopieSchleife - OnAfterGetRecord()
Rezeptzähler.Nr := Rezeptzähler.Nr +1;
Rezeptzähler.MODIFY;


Ich hoffe ich konnte damit nochmal jemandem helfen :)

Ich für mein Teil möchte mich auf jedenfall für die Hilfe von allen Bedanken und ganz Besonders bei @himi81 für deine super Unterstützung! :-) :-)