/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Generator Postdanmark pakkelabels pdf
Fra : Leif Neland


Dato : 08-06-09 14:55

Er der nogen, der har lavet et modul, der kan generere pakkelabels til
postdanmark i pdf?

Selve systemet med at lave data til edifact eller lign regner jeg med ikke
er et problem for mig, det er blot definitionen af en label, der er
problemet...

Leif



 
 
Kim Emax (10-06-2009)
Kommentar
Fra : Kim Emax


Dato : 10-06-09 15:44

Hej Leif
On 8 Jun., 15:54, "Leif Neland" <l...@neland.dk> wrote:
> Er der nogen, der har lavet et modul, der kan generere pakkelabels til
> postdanmark i pdf?
>
> Selve systemet med at lave data til edifact eller lign regner jeg med ikke
> er et problem for mig, det er blot definitionen af en label, der er
> problemet...

Jeg bruger FPDF klassen til flere af de pdf ting jeg laver. På
fpdf.org kan du se en masse eksempler på f.eks. barcodes, måske kan
det hjælpe dig?

--
Mvh
Kim Emax

Danjel (11-06-2009)
Kommentar
Fra : Danjel


Dato : 11-06-09 03:16

On 10 Jun., 23:44, Kim Emax <kime...@gmail.com> wrote:
> Hej Leif
> On 8 Jun., 15:54, "Leif Neland" <l...@neland.dk> wrote:
>
> > Er der nogen, der har lavet et modul, der kan generere pakkelabels til
> > postdanmark i pdf?
>
> > Selve systemet med at lave data til edifact eller lign regner jeg med ikke
> > er et problem for mig, det er blot definitionen af en label, der er
> > problemet...
Jeg har ikke noget der virker i php, men har lige (fået) lavet et
modul til vores ordresystem.
PostDanmark, er bl.a. lidt "picky" med stregkoden, jeg har en godkendt
font, som er tilgængelig gratis på nettet, der hedder
17.IDAutomationHC39M .
Et bette link: http://www.idautomation.com/fonts/free/

Jeg kunne godt være interesseret i dit modul når det er færdigt, hvis
du får det til at virke, og hvis det er noget som du havde tænkt dig
at dele ud af

/Danjel

Stig Johansen (11-06-2009)
Kommentar
Fra : Stig Johansen


Dato : 11-06-09 11:59

Danjel wrote:

> PostDanmark, er bl.a. lidt "picky" med stregkoden,

Mon ikke det nærmere er udstyret, der angiver hvilke barcodes, der kan
læses?

En barcode er ikke bare en barcode.

--
Med venlig hilsen
Stig Johansen

Leif Neland (11-06-2009)
Kommentar
Fra : Leif Neland


Dato : 11-06-09 12:09

Danjel wrote:
> On 10 Jun., 23:44, Kim Emax <kime...@gmail.com> wrote:
>> Hej Leif
>> On 8 Jun., 15:54, "Leif Neland" <l...@neland.dk> wrote:
>>
>>> Er der nogen, der har lavet et modul, der kan generere pakkelabels
>>> til postdanmark i pdf?
>>
>>> Selve systemet med at lave data til edifact eller lign regner jeg
>>> med ikke er et problem for mig, det er blot definitionen af en
>>> label, der er problemet...
> Jeg har ikke noget der virker i php, men har lige (fået) lavet et
> modul til vores ordresystem.
> PostDanmark, er bl.a. lidt "picky" med stregkoden, jeg har en godkendt
> font, som er tilgængelig gratis på nettet, der hedder
> 17.IDAutomationHC39M .
> Et bette link: http://www.idautomation.com/fonts/free/
>
> Jeg kunne godt være interesseret i dit modul når det er færdigt, hvis
> du får det til at virke, og hvis det er noget som du havde tænkt dig
> at dele ud af
>
Jeg har nu fået "reverse-ingeniered" (sp?) den pakkelabel, der kommer ud fra
webpack.

Jeg bruger tcpdf, der bl.a. bruges i phpmyadmin og PHPExcel.

tcpdf laver også stregkoderne; så mangler jeg bare at PostDanmark siger god
for dem, og giver mig nogle stregkodeintervaller...

<?php
// charset=utf-8


require_once('PHPExcel/Shared/PDF/tcpdf.php');

// Dummy data til test
$afsender="430000000\nJoachim von And\nPengetank alle 1\90210 Andeby";
$modtager="Anders And\Gåserødvej 13\90210 Andeby";
$tnt="01078523765DK"
$ordrenr=12345;
$bar1="12S054";
$bar2="2WTI45";
$pakketypetxt="Privatpakke";
$dato="11.06.2009";

$pdf = new TCPDF("L", "mm", "A4", true, 'UTF-8', false);

$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Leif Neland');
$pdf->SetTitle('Pakkelabel');
$pdf->SetSubject('Test');

$pdf->setPrintHeader(false);
$pdf->setPrintFooter(false);

$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

define ('PDF_MARGIN_TOP', 5);
$pdf->SetMargins(5, 2,162);
$pdf->SetAutoPageBreak(FALSE, 5);
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
$pdf->setLanguageArray($l);

$pdf->SetFont('helvetica', 'B', 20);

$pdf->AddPage();

//rammer
$pdf->Rect(5,5,130,200);
$pdf->Line(5,93,135,93);
$pdf->Line(5,156,135,156);
$pdf->Line(5,176,135,176);
$pdf->Line(20,27,87,45);
$pdf->Line(20,45,87,27);

$pdf->ImageEps("POST-4F.EPS", 10,6,30);

$pdf->SetXY(125,0);

$pdf->Write(0, $pakketypetxt,'',0, 'R');

$pdf->Write1DBarcode($bar1, "C128A",90,77,43,15,0.350,
array('text' => true, 'font' => 'helvetica', 'fontsize' => 8,
'stretchtext' => 0));
if ($bar2>"") {
$pdf->Write1DBarcode($bar2, "C128A",18,160,35,15,0.350,
array('text' => true, 'font' => 'helvetica', 'fontsize' => 8,
'stretchtext' => 0));
};
$pdf->Write1DBarcode($tnt, "C39",18,180,95,24,0.350,
array('position' => 'S', 'text' => true, 'font' => 'helvetica',
'fontsize' => 12, 'stretchtext' => 1));

$pdf->SetFont('helvetica', 'B', 10);
$pdf->setXY(15,20);
$pdf->Cell(0, 10, 'AFSENDER', 0, 1, 'L');

$pdf->SetFont('helvetica', '', 9);
$pdf->setXY(18,26);
$pdf->MultiCell(0, 0, $afsender, 0, 1, 'L');

$pdf->SetFont('helvetica', 'B', 10);
$pdf->setXY(15,46);
$pdf->Cell(0, 10, 'MODTAGER', 0, 1, 'L');

$pdf->SetFont('helvetica', '', 11);
$pdf->setXY(18,56);
$pdf->MultiCell(0, 0, $modtager, 0, 1, 'L');

$pdf->SetFont('helvetica', '', 11);
$pdf->setXY(18,55);
$pdf->Cell(0, 0, "Ordrenr. ".$ordrenr, 0, 1, 'R');

$pdf->SetFont('helvetica', 'B', 11);
$pdf->setXY(20,150);
$pdf->Cell(0, 0, "Afsendt Dato:", 0, 1, 'L');

$pdf->SetFont('helvetica', '', 11);
$pdf->setXY(48,150);
$pdf->Cell(0, 0, $dato, 0, 1, 'L');

$pdf->SetFont('helvetica', 'B', 11);
$pdf->setXY(70,150);
$pdf->Cell(0, 0, "Kolli", 0, 1, 'L');

$pdf->SetFont('helvetica', '', 11);
$pdf->setXY(82,150);
$pdf->Cell(0, 0, "1 af 1", 0, 1, 'L');

$pdf->SetFont('helvetica', 'B', 11);
$pdf->setXY(98,150);
$pdf->Cell(0, 0, "Vægt", 0, 1, 'L');

$pdf->SetFont('helvetica', 'B', 11);
$pdf->setXY(125,150);
$pdf->Cell(0, 0, "Kg.", 0, 1, 'L');

$pdf->SetFont('helvetica', 'B', 40);
$pdf->setXY(98,132);
$pdf->Cell(0, 0, "IT", 0, 1, 'R');

$pdf->Output('pakkelabel.pdf', 'I');

?>



Dan Storm (11-06-2009)
Kommentar
Fra : Dan Storm


Dato : 11-06-09 12:08

Leif Neland skrev:
> Er der nogen, der har lavet et modul, der kan generere pakkelabels til
> postdanmark i pdf?

Jeg er lidt nysgerrig her; hvad er der af krav til det - udover det som
Danjel nævner med stregkoden?

Hvordan skal det færdige resultat se ud? Og hvor kommer de nødvendige
data fra (jeg tænker stregkode dataen eller andre data hvis de skal
komme fra Post Danmark)?

Det kunne jo være jeg lige ville prøve at lave et eller andet... :)


--
Dan Storm - storm at err0r dot dk / http://err0r.dk

People who claim they don't let little things bother
them have never slept in a room with a single mosquito.

Stig Johansen (11-06-2009)
Kommentar
Fra : Stig Johansen


Dato : 11-06-09 16:21

Dan Storm wrote:

> Og hvor kommer de nødvendige
> data fra (jeg tænker stregkode dataen eller andre data hvis de skal
> komme fra Post Danmark)?

Jeg ved ikke lige hvordan systemet fungerer i dag, men for ½ snes år siden,
fungerede 'pakkelabels' nærmest som (blanco) checks.

Hvis man bestilte eks. 1000 labels, blev de fortløbende nummereret, og
ejerforholdet - eller udleveringen - registreret til den pågældende kunde.

Via aflæsninger af stregkoden (modtagelse ... aflevering), kunne den
aktuelle porto opgøres.

Derefter blev regningerne sendt til kunden.

--
Med venlig hilsen
Stig Johansen

Dan Storm (11-06-2009)
Kommentar
Fra : Dan Storm


Dato : 11-06-09 21:51

Stig Johansen skrev:
> Jeg ved ikke lige hvordan systemet fungerer i dag, men for ½ snes år siden,
> fungerede 'pakkelabels' nærmest som (blanco) checks.
>
> Hvis man bestilte eks. 1000 labels, blev de fortløbende nummereret, og
> ejerforholdet - eller udleveringen - registreret til den pågældende kunde.
>
> Via aflæsninger af stregkoden (modtagelse ... aflevering), kunne den
> aktuelle porto opgøres.
>
> Derefter blev regningerne sendt til kunden.

Det gør man sikkert stadig, så... Det lød bare lige som en hyggelig
opgave at pusle med, men nu er det jo løst, kunne jeg se. :)

--
Dan Storm - storm at err0r dot dk / http://err0r.dk

Tro ikke brugerne vil gøre noget for at undgå dit killfilter
- Så vigtig er du heller ikke!

Stig Johansen (12-06-2009)
Kommentar
Fra : Stig Johansen


Dato : 12-06-09 05:42

Dan Storm wrote:

> Det gør man sikkert stadig, så... Det lød bare lige som en hyggelig
> opgave at pusle med, men nu er det jo løst, kunne jeg se. :)

Ja, jeg så godt at Leif lavede et indlæg, faktisk præcist samme minut som
dig :)

Jeg lavede et web baseret indkøbsbestillings system til PDK indkøb i
'97-'98, hvor hovedformålet var håndtering af 'stregkodeblanketter' da der
var der den største besparelse/kvalitetssikring lå.

Derfor min interesse - nok mest at nostalgiske årsager.

Men det vil faktisk undre mig hvis man får lov til selv at printe
'blanketter', da jeg umiddelbart kan se 2 risici:
1) Genbrug af numre.
Hvis man af en eller anden årsag 'kommer til' at bruge samme nummer 2 gange
kunne jeg forestille mig det giver noget 'bøvl' i deres Track & Trace -
system.
2) Misbrug af numre.
Hvis man (mis) bruger andres numre, kan man reelt sende pakker på andres
regning.

--
Med venlig hilsen
Stig Johansen

Dan Storm (12-06-2009)
Kommentar
Fra : Dan Storm


Dato : 12-06-09 07:35

Stig Johansen skrev:
> Men det vil faktisk undre mig hvis man får lov til selv at printe
> 'blanketter', da jeg umiddelbart kan se 2 risici:
> 1) Genbrug af numre.
> Hvis man af en eller anden årsag 'kommer til' at bruge samme nummer 2 gange
> kunne jeg forestille mig det giver noget 'bøvl' i deres Track & Trace -
> system.

Ja, jeg havde samme tanker - deraf mit spørgsmål om hvor man skulle få
dataene fra.

> 2) Misbrug af numre.
> Hvis man (mis) bruger andres numre, kan man reelt sende pakker på andres
> regning.

Ja, det kunne man jo komme ud for - også uhensigtsmæssigt jf. dit første
punkt hvis man ikke har styr på dine numre.

PostDanmark må jo have en webservice eller noget lignende til at
udlevere en række numre alt afhængigt af den mængde man køber.



--
Dan Storm - storm at err0r dot dk / http://err0r.dk

People who claim they don't let little things bother
them have never slept in a room with a single mosquito.

Leif Neland (12-06-2009)
Kommentar
Fra : Leif Neland


Dato : 12-06-09 10:09

Dan Storm wrote:
> Stig Johansen skrev:
>> Men det vil faktisk undre mig hvis man får lov til selv at printe
>> 'blanketter', da jeg umiddelbart kan se 2 risici:
>> 1) Genbrug af numre.
>> Hvis man af en eller anden årsag 'kommer til' at bruge samme nummer
>> 2 gange kunne jeg forestille mig det giver noget 'bøvl' i deres
>> Track & Trace - system.
>
> Ja, jeg havde samme tanker - deraf mit spørgsmål om hvor man skulle få
> dataene fra.
>
>> 2) Misbrug af numre.
>> Hvis man (mis) bruger andres numre, kan man reelt sende pakker på
>> andres regning.
>
> Ja, det kunne man jo komme ud for - også uhensigtsmæssigt jf. dit
> første punkt hvis man ikke har styr på dine numre.
>
> PostDanmark må jo have en webservice eller noget lignende til at
> udlevere en række numre alt afhængigt af den mængde man køber.

En af mine begrundelser for at udskrive labels selv er, at webpack på et
tidspunkt var ustabilt, så vi stod og ikke kunne pakke ordrer, fordi vores
pakkesystem kræver at ordrenummer og track-and-tracenummer stemmer sammen.
Skulle webservicen give et pakkenummer, var man jo lige vidt.

Desuden bliver dankortbetalinger først hævet, når pakken er pakket, så der
er vi også afhængig af et fremmet system.

Man skal uploade en EDIFACT-fil med data for de pakker, man sender.
Jeg kan forestille mig at pakken hurtigt bliver sparket til side, hvis
stregkoden ikke er med i en aktuel datafil eller er dubleret.

Men jeg skal nok rapportere videre om forløbet.

Leif



Leif Neland (22-06-2009)
Kommentar
Fra : Leif Neland


Dato : 22-06-09 12:14


"Leif Neland" <leif@neland.dk> skrev i en meddelelse
news:4a321b57$0$56787$edfadb0f@dtext02.news.tele.dk...
>
> Men jeg skal nok rapportere videre om forløbet.
>
Så kom resultatet. Så må jeg se om tcpdf kan overtales til at lave det som
postdk vil have det.


Privatpakke 0707 852 376 5 DK - kan ikke godkendes:

a.. Krav til ratio er ikke opfyldt. Testen viser 2.0 og kravet er, at
forholdet mellem de tykke stave og mellemrum og de tynde stave og mellemrum
skal være 1: 2.5 - 3.0




Serviceydelse 2WTI45 - Modtagerkvittering - kan ikke godkendes:

a.. Krav til det smalle element ("X") er ikke opfyldt. Testen viser 0.3465
og kravet er, at forholdet mellem de smalle stave og smalle mellemrum skal
være min. 0.3500 og max. 0.5100




LIT stregkode - 12S054 - kan ikke godkendes:

a.. Krav til stregkodens længde er ikke opfyldt. Stregkoden er 35 mm og må
kun være 32 mm.

(LIT stregkoden er opbygget således: 12SXXX, hvor XXX er et løbenummer,
tildelt af Post Danmark. Denne stregkode er ikke et krav).






Johan Holst Nielsen (16-06-2009)
Kommentar
Fra : Johan Holst Nielsen


Dato : 16-06-09 10:04

Stig Johansen wrote:
> Men det vil faktisk undre mig hvis man får lov til selv at printe
> 'blanketter', da jeg umiddelbart kan se 2 risici:
> 1) Genbrug af numre.
> Hvis man af en eller anden årsag 'kommer til' at bruge samme nummer 2 gange
> kunne jeg forestille mig det giver noget 'bøvl' i deres Track & Trace -
> system.
> 2) Misbrug af numre.
> Hvis man (mis) bruger andres numre, kan man reelt sende pakker på andres
> regning.

Jeg ved man kan - ved dog ikke om det kræver en særlig "tilladelse"
ifbm. softwaren til PostDK.

F.eks. EDI-soft har en løsning med en lille windows klient der udprinter
pakkelabels via en termoprinter. Man køber blot programmet og
termoprinter - og så køber man nummerserier af PostDanmark man indtaster
i programmet (mener det er EDI-Soft der dog indtaster nummerserierne!).
Derefter kan man udprinte som man lyster.

Jeg ved ikke om EDI-Soft har special aftale med PostDanmark - men det
burde man jo kunne høre PostDanmark om :)

--
Johan Holst Nielsen
www.phpgeek.dk

Leif Neland (16-06-2009)
Kommentar
Fra : Leif Neland


Dato : 16-06-09 13:28

Stig Johansen skrev:

>
> Men det vil faktisk undre mig hvis man får lov til selv at printe
> 'blanketter', da jeg umiddelbart kan se 2 risici:
> 1) Genbrug af numre.
> Hvis man af en eller anden årsag 'kommer til' at bruge samme nummer 2 gange
> kunne jeg forestille mig det giver noget 'bøvl' i deres Track & Trace -
> system.
> 2) Misbrug af numre.
> Hvis man (mis) bruger andres numre, kan man reelt sende pakker på andres
> regning.
>

Da stregkoden skal stå i en fil, der uploades til postdk senest en time
før pakken bliver sorteret, vil det betyde at en pakke, der ikke er i
filen, vil blive afvist. Formoder jeg

Hver kunde har sit eget login/password til upload, og der er kun åbent
for aftalte ip-adresser.

Så jeg tror postdk har check på snydemuligheder.

Er du et firma med aftale, så kan du sikkert miste aftalen, hvis du snyder.

Er du uden aftale, og bare lusker en pakke med falsk stregkode i
pakkeburet på posthuset, kan de jo bare konfiskere pakken

Leif

Stig Johansen (17-06-2009)
Kommentar
Fra : Stig Johansen


Dato : 17-06-09 02:29

Leif Neland wrote:

> Da stregkoden skal stå i en fil, der uploades til postdk senest en time
> før pakken bliver sorteret, vil det betyde at en pakke, der ikke er i
> filen, vil blive afvist. Formoder jeg

Takker for svaret.
Son nævnt kender jeg kun systemet fra dengang det var fortrykte blankettere
man 'købte'.

Ud fra dit oprindelige indlæg kunne man godt få det indtryk, oprettelsen i
T&T systemet forgik ved udlevering af nummerserien, men det er åbenbart nu
kunden, der selv opretter numrene i T&T.

Det beroliger mig, for så får formentlig en afvisning hvis man har levet ged
i sin nummerserie.

--
Med venlig hilsen
Stig Johansen

Anders Wegge Keller (11-06-2009)
Kommentar
Fra : Anders Wegge Keller


Dato : 11-06-09 12:39

Stig Johansen <wopr.dk@gmaill.com> writes:

> Danjel wrote:

>> PostDanmark, er bl.a. lidt "picky" med stregkoden,

> Mon ikke det nærmere er udstyret, der angiver hvilke barcodes, der
> kan læses?

Primært kapacitet i maskinsorteringen af pakker. Bliver stregkoden
ikke læst første gang, ligger pakken og tager plads op på systemet. Så
jo højere kvalitet stregkode, jo flere pakker kan der sorteres
pr. time, og demed en bedre udnyttelse af investeringen.

Vi[1] kan læse langt de fleste stregkoder efter en 2-3 forsøg, men
det er i sagens natur ikke specielt befordrende for økonomien i
pakkebefordringen.

1. Jeg arbejder for det firma der har leveret sorteringsudstyr til
PDK.

--
/Wegge

Danjel (14-06-2009)
Kommentar
Fra : Danjel


Dato : 14-06-09 06:32

> Men det vil faktisk undre mig hvis man får lov til selv at printe
> 'blanketter', da jeg umiddelbart kan se 2 risici:
> 1) Genbrug af numre.
> Hvis man af en eller anden årsag 'kommer til' at bruge samme nummer 2 gange
> kunne jeg forestille mig det giver noget 'bøvl' i deres Track & Trace -
> system.
> 2) Misbrug af numre.
> Hvis man (mis) bruger andres numre, kan man reelt sende pakker på andres
> regning.
Jeg ved ikke hvordan de styrer om man misbruger, eller bruger dobbelt,
men man sagtens få lov.

Vi gør det her, jeg kan godt sende en pdf med vores design til "nogen"
hvis det skulle ønskes...
Designet, stregkoder m.m. skal forhåndsgodkendes af pdk, og så bliver
man tildelt nummerserier som man kan bruge.
Vi får et par tusind ad gangen....

Jeg vil som sagt gerne sende et layout, men jeg er indlagt med min
datter de næste 2 uger (fra mandag), så jeg vil ikke love at jeg kan
gøre noget før jeg er tilbage....

Man kan fra pdk få at vide hvilke specs der er, men det er ikke det
hele der står der...

Hvis man f.eks sender paprør skal stregkoden sidde parralelt med
røret, det står der ikke nogen steder, vi opdagede det først da vi fik
150 paprør retur

/Danjel

Anders Wegge Keller (16-06-2009)
Kommentar
Fra : Anders Wegge Keller


Dato : 16-06-09 14:33

Leif Neland <leif@neland.dk> writes:

> Da stregkoden skal stå i en fil, der uploades til postdk senest en
> time før pakken bliver sorteret, vil det betyde at en pakke, der
> ikke er i filen, vil blive afvist. Formoder jeg

Der bliver taget et billede af pakkelabelsen, hvorefter der så sidder
en operatør og indtaster postnummer og så meget af adressen der nu er
nødvendig, for at man kan sortere pakken. Det samme gør sig gældende
for de 2-4% af dataleverandørerne, der ikke kan finde ud af at
overholde specifikationen.

Jeg taler her kun om hvad der sker med EDIFACT pakker der når frem
til maskinsorteringen. Om der evt. sker en frasortering på
indleveringsposthuset, skal jeg ikke kloge mig på.

--
/Wegge

Anders Wegge Keller (16-06-2009)
Kommentar
Fra : Anders Wegge Keller


Dato : 16-06-09 16:59

Leif Neland <leif@neland.dk> writes:

> Hvorfor skal pakkelabelen dog indtastes, når alle nødvendige data
> allerede er kendt af postdk, fordi data er sendt via EDIFACT eller
> Webpack?

Det er kun i de tilfælde, hvor data af en eller anden grund ikke er
kommet frem, det sker. Du skal læse mit svar som en kommentar til din
formodning.

--
/Wegge

Søg
Reklame
Statistik
Spørgsmål : 177449
Tips : 31962
Nyheder : 719565
Indlæg : 6408125
Brugere : 218879

Månedens bedste
Årets bedste
Sidste års bedste