Skip to main content
Skip table of contents

Sage: Stücklistenposition anlegen (CreateBomLineItem)


Sage: Stücklistenposition anlegen (CreateBomLineItem)

Anlegen einer Stücklistenposition. In der Eingabeparametergruppe können verschiedene Parameter mit den entsprechenden Werten belegt werden. Folgende Parameter können verwendet werden: agpos,aufbr, beregelung, cadpos, chargen_rein, datvon, ersatz, gewicht, gewicht_br, herstellernr, identnr, kn_ausliefteil, kn_matdruck, kn_vdispo, kostst, kzmat, lgber, lgfach, lgnr, meg, menge_bezug, mes, staltern, stlnr, stlvar, stmenge, stpos, umrech, var, vorlzeit, werk. Die Felder identnr, stlnr und stmenge sind zwingend erforderlich. Bei Bedarf können zur Stücklistenposition die Information für den Zuschnitt mitgeliefert werden. Die Feldnamen des Zuschnitts aus B7 wurden um den Präfix z_ ergänzt, um diese Felder zu kennzeichnen. Folgende Parameter können übergeben werden: z_bez, z_bildnr, z_breite, z_hoehe, z_laenge, z_mezu, z_rbreite, z_rhoehe, z_rlaenge, z_useraen, z_userneu, z_vzuschl, z_winka, z_winkb, z_zumenge. Die Funktion liefert nach der Anlage der Stücklistenposition in einer Parametergruppe dessen Daten zurück. Für Ein- und Ausgabe kann dieselbe Parametergruppe verwendet werden. Falls eine indizierte Parametergruppe vorliegt, so muss der Index mit angegeben werden. Falls die Stücklistenposition nicht angelegt werden kann, liefert der Service eine entsprechende Fehlermeldung. Diese wird über den Parameter Meldung übergeben. Vor einer Auswertung der Ausgabeparametergruppe sollte der Parameter Meldung überprüft werden.

Folgende Parameter der Parametergruppe der Stücklistenpositionen werden gelesen.: aendnr, agpos, beregelung, cadpos, dataen, datneu, datvon, ersatz, gewicht, gewicht_br, herstellernr, identnr, kostst, lfdnr, meg, menge_bezug, mes, staltern, stid, stlidentnr, stlnr, stlvar, stmenge, stpos, txt_bst, txt_nr, umrech, useraen, userneu, var, vorlzeit.

Falls die Stücklistenposition einen Zuschnitt enthält, werden zusätzlich folgende Parameter gelesen: z_aendnr, z_bez, z_bildnr, z_breite, z_dataen, z_datneu, z_hoehe, z_laenge, z_mezu, z_rbreite, z_rhoehe, z_rlaenge, z_stid, z_useraen, z_userneu, z_vzuschl, z_winka, z_winkb, z_zumenge

Syntax:

Status = f$SageService ( Service , 'CreateBomLineItem' , 'PGINPUT' , 'PGOUTPUT' )

 

Argument

Typ

Bedeutung

 

Service

Zeichenkette

URL des WebService Dienstes

 

'CreateBomLineItem'

Zeichenkette

Befehlskonstante

 

'PGINPUT'

Zeichenkette

Name der ePOS Parametergruppe mit den Daten der Stücklistenposition.

 

'PGOUTPUT'

Zeichenkette

Name der ePOS Parametergruppe mit den Ergebnisdaten der Stücklistenposition.

Ergebnis:

Ganzzahl

Status der Funktion:

1 : die Servicefunktion wurde erfolgreich aufgerufen

-1 : die Komponente eposvbcomexe konnte nicht gefunden werden

-2 : keine URL der Funktion angegeben

-4 : allgemeiner Fehler

Beispiel:

CODE
proc void create_stueckliste(  )
{
   int i;
   int Anzahl;
   string PGName;

   // Belegen des Service Namen
   B7Service = 'http://b7demo.sagebaeurer.de/br71/callin/epos_soap';

   // Belegen der Daten des Stücklistenkopfs
   stueli_kopf.stlidentnr = 'BNUESSLE-T03';
   stueli_kopf.art = 1;
   stueli_kopf.userneu ='prodgen';

   f$PGLeer( 'stueli_pos[]' );

   // Belegen der Daten der Stücklistenpositionen   
   stueli_pos[1].identnr = '110.100';
   stueli_pos[1].stmenge = 1;
   stueli_pos[1].mes = 'STK';
   
   stueli_pos[2].identnr = 'BTL';
   stueli_pos[2].stmenge = 1;
   stueli_pos[2].mes = 'STK';

   stueli_pos[3].identnr = 'BODEN';
   stueli_pos[3].var = '0001';
   stueli_pos[3].stmenge = 1;
   stueli_pos[3].mes = 'STK';

   stueli_pos[4].identnr = '11000111';
   stueli_pos[4].stmenge = 2;
   // Zuschnittinformationen
   
   stueli_pos[4].z_bez = 'Schutzblech';
   stueli_pos[4].z_breite = 150;
   stueli_pos[4].z_hoehe = 200;
   stueli_pos[4].z_mezu = 'MM';
   stueli_pos[4].z_zumenge = 1;
   
   // Anlegen des Stücklistenkopfs
   Status = f$SageService ( B7Service , 'CreateBOM' , 'stueli_kopf' , 'stueli_kopf' );
   if (f$IstNulltext('stueli_kopf.stlnr') == '')
   {
      f$Meldung ('Sage Meldung', Meldung);
      return ();
   }

   // Anlegen der Stücklistenpositionen
   Anzahl = 4;
   for ( i=1;i<=Anzahl;i=i+1)
   {
      stueli_pos[i].stlnr = stueli_kopf.stlnr;
      PGName = 'stueli_pos[' + f$ZahlzuText(i) + ']';
      Status = f$SageService ( B7Service , 'CreateBOMLineItem' , PGName , PGName );
   }
   if (Meldung != '')
   {
     f$Meldung ('Sage Meldung', Meldung);
     return(); 
   }
   p$anzeige_ergebnis('stueli_kopf' );
   p$anzeige_ergebnis('stueli_pos' );

}

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.