Heart-Profit ERP
July 03, 2024, 11:33:14 am *
Welcome, Guest. Please login or register.

Login with username, password and session length
News:
 
   Home   Help Login Register  
Pages: [1]
  Print  
Author Topic: Importeren (Dositainer) Recept vanuit Excel  (Read 1726 times)
0 Members and 0 Guests are viewing this topic.
Wouter Rijnbende
Administrator
Partner
*****
Offline Offline

Posts: 5361


View Profile WWW
« on: April 06, 2018, 10:59:46 am »

Het importeren van een (Dositainer) Recept vanuit Excel betreft een Kliënt specifieke importfunktie, welke alleen beschikbaar is voor de klant voor wie ze ontwikkeld is. Aldaar is de funktionaliteit te vinden vanuit Hoofdmenu,9-8-9-5).


Allereerst vraagt deze Funktie om te naam van het in te lezen Excelbestand, welke het Recept bevat. We gaan er niet vanuit dat u deze gehele lokatie handmatig intypt (mag natuurlijk wel), maar het is eenvoudiger gebruik te maken van toets F4 (Zoeken XLS). Deze toets opent een file navigatie scherm waarin u het gewenste Excel document kunt selekteren.

Na selektie van een Exceldocument wordt niet alleen het Exceldocument geselekteerd, óók bewaart Profit de Directory waaruit dit document gelezen werd, opdat als u nógmaals een ander Recept wilt inlezen, u standaard terugkeert naar de Directory waar de laatste keer het Recept uit werd gelezen.

Nb: De informatie m.b.t. deze laatst gebruikte directory wordt opgeslagen in de TROEP directory van het aktieve werkstation. Zou die directory helemaal leeg worden gemaakt, dan gaat ook de lokatie van de laatst gebruikte directory verloren, en zult u opnieuw moeten navigeren naar de directory waarin de Recepten staan.

Nadat we het in te lezen Recept hebben geselekteerd keren we terug in de import funktie. Deze toont ons de gegevens van het in te lezen Recept, en zal vervolgens op zoek gaan naar de meest geschikte Recept-Verschijning, die daarna default ingevuld staat, maar door de gebruiker overruled mag worden.


De Recept-Verschijning die vanuit deze import funktie ondersteund worden zijn alle Verschijningsvormen die beginen met de letters "AZ". Waar we standaard in Profit kunnen volstaan met één Recept voor een Artikel, is voor het type Recepten waar we het hier over hebben gesteld dat we per te produceren Batchgrootte één Recept vastleggen. Of beter, de Batchgrootte is vastgelegd in het in te lezen Recept, het zal hier gaan om ranges die bepaald worden door de capaciteit van de mengers; derhalve "batch tot 2.000 L", of "batch tot 10.000 L". Bij het inlezen van het Recept gaat Profit op zoek naar de eerst volgende Recept-Verschijning met een inhoud die groter of gelijk is aan de Receptgrootte van het in te lezen Recept. In dit geval bedraagt dat Recept 1800 L en dus wordt de Recept-Verschijning "batch tot 2000 L" geselekteerd.


Nb: Vanzelfsprekend geldt dat de verhouding van de grondstoffen in een Recept van 2000 L hetzelfde behoort te zijn als in een Recept van 10000 L, hooguit hebben we 5x zo veel nodig als we 5x zoveel produceren. Dat we hier toch een ander Recept voor moeten vastleggen, heeft te maken met de wijze waarop het produkt geproduceerd wordt. Zo kan het Recept van 2.000 L aangeven dat grondstoffen uit zakken gehaald moeten worden, en kan het 10.000 L Recept afdwingen dat er met Big Bags gewerkt moet worden. Ook geldt dat als we 5x zoveel maken, we mogelijk ook 5x zoveel Dositainers nodig hebben, en deze op een andere manier willen gaan vullen, om zoveel mogelijk handelingen te elimineren. Binnen één Recept gebeuren er al dit soort dingen. Merk op dat we een Dositainer eerst met een laagje van een bepaald produkt vullen, dan de andere grondstoffen er in gooien, en dan weer afsluiten met een laagje van hetzelfde produkt. Het meest optimaal is als we het Recept zodanig inrichten dat we het bij een van die twee laagjes volle zakken in de Dositainer gooien, en dat we de 2e hoeveelheid afwegen. Dit soort registraties kunnen we in het Recept opnemen als we vooraf weten dat het Recept voor één specifieke grootte gedefinieerd is. Zouden we iedere willekeurige hoeveelheid mogen produceren met een Recept, dan heeft de Receptmaker hier geen invloed meer op.



Tabblad Artikelnummer
Het Recept in Excel bevat méér dan alleen het Recept welke in Profit ingelezen moet worden. Het beschrijven van die andere tabbladen doet niet ter zake, omdat Profit er niets mee doet. Profit gaat op zoek naar éérst Tabblad waarop de naam van dat Tabblad voorkomt als Artikelnummer in Profit. Ofwel, omdat 547PU0020 voorkomt als Artikel, zal hier het 3e Tabblad worden geacht het te importeren Recept te bevatten.



Oude versie bewaren?
Als we een Recept welke al bestaat opnieuw gaan inlezen, dan zullen we daarmee het vorige Recept overschrijven. Zodra Profit herkent dat er een Recept wordt ingelezen die al bestaat in Profit, zal de vraag worden gesteld of we de vorige versie van het Recept willen bewaren. Beantwoorden we deze vraag met Ja, dan zal de vorige versie als Historisch Recept worden opgeslagen.


Let op:
We importeren een Recept in Profit met als doel dat geïmporteerde Recept als nieuw Recept te gaan gebruiken. Het eerste wat er ná de melding 'Oude versie bewaren' gebeurd, is dat we het oude Recept verwijderen alvorens het nieuwe Recept in te lezen. Als het inlezen van het nieuwe Recept echter fout loopt (wat kan optreden als het in te lezen Recept niet voldoet aan de regels die hiervoor zijn gesteld) dan is de eindsituatie dat we daarna helemaal geen Recept hebben. Wellicht iets specifieker: geen Recept meer hebben conform deze AZ Recept-Verschijningen, immers, voordat we met AZ-Recepten begonnen, waren er nog KUIP Recepten, en die blijven gewoon bestaan.
Hoe dan ook, uitgangspunt is dat áls het Recept fouten bevat, ze niet ingelezen mag worden, de fouten moeten worden hersteld, en het Recept daarna opnieuw moet worden ingelezen.


Indeling
Een in te lezen Recept heeft (grof) de volgende indeling:

In separate stappen worden de onderdelen uitgelegd.


Header
Excelregels 1 t/m 5 worden geacht de header van het Recept te bevatten. Uit deze header lezen we de volgende data:

Omschrijving Recept
Deze staat op regel 2 in kolom C.

Recept-Grootte
Deze staat op regel 4 in kolom J.

Bijzonderheden
Te vinden op regel 1 in kolom D.



Receptregels
De Receptregels worden gelezen vanaf Excelregel 6.
Onderstaande kolommen worden daarin altijd wel gebruikt, een aantal van de andere kolommen alleen in bepaalde situaties (die dan verderop worden uitgelegd).

A = Receptregel
B = Raaplijstvolgorde
C = Artikel / Bewerking / PCC
E = Omschrijving
J = Aantal eenheden

DAGSEGMENT
De 1e van alle Receptregels dient altijd met DAGSEGMENT te beginnen.
Het Receptregelnummer is op zich altijd vrij, maar, bij de inrichting van dit Recept is ervoor gekozen om bij een volgend Dagsegment over te stappen naar een nieuw honderdtal kwa regelnummers. Op zo'n manier zou duidelijker zijn dat alle 100 regels voor het 1e Dagsegment gelden en alle 200 regels voor het 2e Dagsegment. In theorie zou het nog duidelijker zijn als we dan de regels beginnen te nummeren vanaf 1000, en dan 2000 hanteren voor het 2e Dagsegment, dan hebben we nl. meer regelnummers tot onze beschikking om het Recept in te delen (wat er nu maar 99 zijn per Dagsegment, maar er evengoed 999 hadden kunnen zijn).


Een Dagsegment mag worden gezien als een deel van deze produktieorder wat binnen één dag(deel) wordt geproduceerd. Een Recept zoals deze bestaat uit één Dagsegment, wat impliceert dat de hele order in één keer wordt afgehandeld. Het is ook mogelijk dat een order in meerdere Dagsegmenten wordt afgehandeld, wat dan bijv. kan inhouden dat het eerste deel vandaag wordt uitgevoerd, en het tweede deel morgen.


ACTIVITY
Het Recept is ingedeeld in één of meerdere Activities.
Als we op dit Recept een filter leggen op de Activities, dan houden we de volgende Receptregels over:

De Activity dwingt af dat dat deel van het Recept op een bepaalde manier moet worden afgehandeld, conform de richtlijnen van die Activity.

We onderkennen de volgende Activities:

  • DOSITAINER
  • DOSING BIG BAG
  • DOSING ADDITIVE
  • DOSING BULK
  • DOSING MANUAL
  • DOSING CANS
  • DOSING ADJUSTMENT
  • DOSING CLEANING (MALEN) / TANK CLEANING CYCLE

Iedere Activity heeft haar eigen grondstoffen nodig, en deze grondstoffen moeten ergens vandaan komen. De benodigde grondstoffen voor de volgende twee Activities komen uit leidingen vanuit een silo-/opslagtank en hoeven niet expliciet te worden opgehaald:
  • DOSING BULK
  • DOSING CLEANING (MALEN) / TANK CLEANING CYCLE

De resterende Activities kunnen we indelen naar Poeders of Vloeistoffen.

Poeders:
  • DOSITAINER
  • DOSING BIG BAG

Vloeistoffen:
  • DOSING ADDITIVE
  • DOSING MANUAL
  • DOSING CANS
  • DOSING ADJUSTMENT

Poeders halen we altijd voor een specifieke Produktieorder op.
De opsplitsing naar de twee Activities is, om via het Recept een verschil aan te kunnen geven van een deel wat specifiek voor een Produktieorder wordt opgehaald, wordt gewogen, op een pallet wordt verzameld en daarna bij een Vulstation in een Dositainer wordt gestort òf een deel waarbij we een volle Big Bag mogen ophalen en deze in de menger gestort kan worden.

Voor de vloeistoffen geldt:
  • DOSING ADDITIVE -> Betreft altijd Vaten, worden opgehaald voor meerdere orders tegelijk, betreft veelal grotere hoeveelheden.
  • DOSING MANUAL -> Uit grijpvoorraad, of opgehaald voor een specifieke Produktieorder, altijd volle blikken.
  • DOSING CANS -> Opgehaald voor een specifieke Produktieorder, volle blikken maar ook afgewogen hoeveelheid.
  • DOSING ADJUSTMENT -> Uit grijpvoorraad, of opgehaald voor specifieke Produktieorder

Andere dan de hier boven genoemde Activities kunnen niet worden gebruikt; het inlezen van het Recept zal er op worden afgekeurd.


RAAPVOLGNUMMER
In kolom "B" vinden we een Raaplijstvolgnummer.
Iedere Excelregel van een bepaalde Activity wordt hier geacht dezelfde waarde te bevatten.
Per Activity mag slechts één volgnummer worden gebruikt.
Ieder Raapvolgnummer mag maar bij één Activity worden gebruikt (ze mag dus niet dubbel voorkomen, behoudens binnen de regels vandezelfde Activity).

Het Raapvolgnummer is bedoeld om aan te geven in welke volgorde er moet worden geraapt voor de verschillende Activities. Dit heeft dus niets te maken met de volgorde waarin het produkt geproduceerd wordt, maar heeft alles te maken met de volgorde waarin geraapt moet worden. In het voorbeeld van dit Recept, begint ons Recept met DOSING BULK, krijgen we daarna DOSING CANS, en als 3e pas DOSITAINER. Toch heeft DOSITAINER een Raapvolgnummer #1, en zullen we die als eerste moeten gaan rapen. In dit voorbeeld heeft de maker van het Recept gesteld dat we w.s. meer tijd nodig hebben om alle grondstoffen bij elkaar te rapen om in een Dositainer te gooien, dan de tijd die we nodig hebben om de vloeibare produkten te mengen binnen DOSING CANS, en geeft ze aan dat DOSITAINER een hogere prioriteit heeft. Daar moeten we dus als eerste grondstoffen voor ophalen.

De Raaplijstvolgnummers van de Activities waarvoor grondstoffen moeten worden opgehaald, dienen te bestaan uit een numerieke waarde, een cijfer 1 t/m 999 (maar meer dan 20 zullen we w.s. al niet halen). Activities waarvoor niets hoeft te worden opgehaald (BULK) hoeft in principe geen Raaplijstvolgnummer te hebben; deze worden in het recept gevuld met Raaplijstnummers die zijn samengesteld uit een letter.


BESTEMMING
Op dezelfde regel als waarop een nieuwe Activity begint (PCC: ACT) kan kolom "F" worden gevuld met een tekst waarde die representatief is voor de bestemming van de geraapte grondstoffen. Hier kan (in tekst) worden aangegeven of ze naar de "Natte ruimte" moeten, of naar een "Stijgbuis", of door het "Luik" moeten worden gegooid.



KLEURCODE DOSITAINER
Als de Activity een Dostainer impliceert, dan dient kolom "I" te worden gevuld met de benodigde Kleurcode van die Dositainer.






Recept in onderdelen
Indien het Artikelnummer van de in te steken grondstof begint met de letters CLEAN of COLOUR, dan is het uitgangspunt dat er voor dát Artikelnummer een Recept is gedefinieerd, welke in onderdelen op de Produktieorder wordt toegevoegd. Bedenk hierbij dat er altijd gespoeld wordt met een vaste reeks van bijv. 5 grondstoffen. Die 5 kunnen vervolgens in een separaat CLEAN-Recept worden opgenomen (waar er meerdere van mogen bestaan). In het Recept zelf hoeft nu enkel het CLEAN Artikel te worden opgenomen. Voegen we een Produktieorder toe voor ons eindprodukt, dan zal het CLEAN Artikel op de Produktieorder worden vervangen door de 5 produkten die zijn opgenomen in het betreffende CLEAN Recept. Deze truc zorgt er dus voor dat we niet in ieder Recept onze 5 Artikelen hoeven op te nemen. Ook zorgt ze ervoor dat we achteraf nog eens het CLEAN Recept kwa onderdelen kunnen wijzigen, zonder dat we daarvoor alle eindprodukt-recepten hoeven aan te passen.


Einde
Het inlezen van de Receptregels stopt zodra er twee achtereenvolgende regels worden gevonden waarbij er géén omschrijving is ingevuld in kolom E.



Foutmeldingen:


< Excelregel (rij); Regelnummer 0 >
Kolom A is v.w.b. de in de melding getoonde Excelregel gevuld met de waarde 0; dit is niet toegestaan.


< Regelnummer (Row: xxx) niet toegestaan; bestaat al >
Kolom A bevat een Regelnummer welke in dit Recept al eerder gebruikt is. Dubbele Regelnummers zijn niet toegestaan.


< Regelnummer (Row:xxx) niet toegestaan; is kleiner dan vorige regel >
Het uitgangspunt is dat de Receptregels in uw Recept in oplopende volgorde zijn genummerd. Deze melding impliceert dat we bijv. zojuist regel 100 verwerkt hebben, en nu een regel 80 te verwerken krijgen.


< Nieuwe Activity (rij) niet toegestaan; Mengsel aktief >
Deze melding treedt op indien op de genoemde regel een nieuwe Activity (ACT) begint, terwijl er in de regels erboven een START-MENGSEL was opgenomen zonder dat deze is afgesloten met een STOP-MENGSEL.


< Nieuw Mengsel  (rij) niet toegestaan; Mengsel aktief >
Deze melding treedt op indien op de genoemde regel een nieuw Mengsel (START-MENGSEL) begint, terwijl er in de regels erboven al een START-MENGSEL was opgenomen zonder dat deze is afgesloten met een STOP-MENGSEL.


< Grondstof xxxx bestaat niet >
Het Recept verwijst naar een grondstof welke niet als Artikelnummer in Profit voorkomt.


< Waarschuwing: Voorraadeenheid Artikel "xxxxx" niet gelijk aan "KG" >
Binnen het hele ontwerp van alle Scanterminalschermen waarmee grondstoffen worden opgehaald en afgewogen, is gesteld dat we even niet moeilijk hoeven te doen m.b.t. de Voorraadeenheid, omdat alle Grondstoffen in kilogram gedefiniëeerd zullen zijn.  Artikelen die in Vaten verpakt zijn, en waarvan we normaliter zouden mogen verwachten dat ze in "Liters" op voorraad liggen, worden in "Kilogram" op voorraad geregistreerd. We tappen dus niet een hoeveelheid liters, maar we wegen een aantal kilogram.
Op zich hoeft dit (natuurlijk) niet altijd praktijk te zijn, immers, ons Artikelbestand bevat wel degelijk "Liter" produkten.
Zouden we die in een Recept insteken als grondstof, dan kan dit mogelijk tot problemen leiden; uitgangspunt was immers dat dit niet gebeurde.

In plaats van 'hard blokkeren' geven we een waarschuwing; op die manier kunt u nog wel zelf testen in hoeverre uw Recept alsnog 'werkt', maar houdt er rekening mee (of ga er vanuit) dat er van alles fout zal gaan m.b.t. de weergave van het aantal eenheden <> omrekeningen tussen Voorraadeenheid en kilogram.


< Omschrijving impliceert Activity, maar formele Activity (ACT) ontbreekt >
Iedere nieuwe Activity (behoudens DOSITAINER) begint met een Process Control Command ACT in kolom "C".
Een DOSITAINER heeft PCC START-DOSITAINR in kolom "C" staan.


< Meerdere Raaplijstvolgnummers binnen dezelfde Activity niet toegestaan (Row)>
Alle regels van dezelfde Activity worden geacht hetzelfde Raaplijstvolgnummer te bevatten.
Bij deze kontrole wordt overigens alleen rekening gehouden met numerieke Raaplijstnummers; letters worden genegeerd.


<Nieuwe Activity/Dositainer met behoefte aan "xxx", doch geen unieke Raapvolgorde >
Deze melding verschijnt indien er nieuwe Activity wordt gestart doch kolom "B" met een Raaplijstvolgnummer is gevuld welke al bij een andere Activity gebruikt was; iedere Activity moet een uniek Raaplijstvolgnummer hebben.


< Geen Recept gevonden voor Artikel xxx >
Deze melding kan optreden bij de CLEAN en COLOUR Recepten die in onderdelen moeten worden gesubstitueerd in de te genereren Produktieorder. Als het Recept bijv. verwijst naar een Recept CLEANJISA, en dit Recept bestaat niet, dan kunnen de onderdelen daarvan ook niet in de P.O. worden opgenomen.


< Recept Artikel xxx dient met Activity te beginnen >
Een te substitueren CLEAN of COLOUR Artikel is bedoeld om een kompleet Cleaning recept te kunnen plakken in een Recept. Een dergelijk Recept dient derhalve te beginnen met een nieuwe Activity. Deze melding impliceert dat het Recept niet begint met een Process Control Command "ACT".


< DOSING MANUAL maar hoeveelheid impliceert geen volle blikken >
Indien er binnen DOSING MANUAL een behoefte wordt gekreëerd aan een produkt, deze hoeveelheid niet uit een Vat gedekt kan worden (omdat het produkt niet leverbaar is in vaten), dan zal ze uit Blikken gedekt moeten worden. Hierbij geldt als regel dat we bij DOSING MANUAL alleen met volle blikken werken en dat er niets wordt afgewogen. Deze melding verschijnt indien het Recept een behoefte heeft (bijv. 15 Kg) terwijl er geen blikken zijn waaruit (zonder te wegen) een hoeveelheid van 15 Kg kan worden geboekt.
Wellicht is de hoeveelheid onjuist òf behoort uw Activity DOSING CANS te zijn.

< DOSING ADDITIVE, maar Artikel is niet beschikbaar in een Vat >
Binnen de Activity DOSING ADDITIVE worden vloeibare produkten verwerkt die rechtstreeks uit vaten worden afgeboekt. Deze melding verschijnt indien binnen DOSING ADDITIVE een grondstof is opgenomen terwijl er het Artikel geen Verschijningsvorm heeft die een Vat impliceert. Mogelijk is de indikator 'Verschijningsvorm betreft Vat' niet ingesteld bij de betreffende Verschijningsvorm  òf probeert u blikken te verwerken binnen DOSING ADDITIVE en behoort uw Activity eigenlijk DOSING CANS te zijn.


< Vloeibaar Artikel (xxx) niet toegestaan binnen Activity DOSITAINER >
Dositainers worden gevuld met poeders, niet met vloeistoffen.
Vermoedelijk staat rubriek 'Vloeibaar J/N' bij het Artikel niet juist.

< Artikel wordt geacht vloeibaar te zijn buiten Dositainers >
Als alle poeders in Dositainers gaan, dan zullen de overige produkten (met de toevoeging 'die we moeten ophalen en of wegen) 'vloeistoffen' moeten betreffen.
Komen we een produkt tegen binnen DOSING ADDITIVE, DOSING CANS of DOSING MANUAL welke niet als Vloeistof is gedefinieerd, dan volgt deze melding.
Kontroleer de waarde van rubriek 'Vloeibaar J/N' op Artikelniveau.
Logged

Heart-Profit company ID : HA
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1 RC2 | SMF © 2001-2005, Lewis Media Valid XHTML 1.0! Valid CSS!
Page created in 0.03 seconds with 20 queries.