NAME
Business::DPD - handle DPD label generation
SYNOPSIS
use Business::DPD;
my $dpd = Business::DPD->new();
$dpd->connect_schema;
my $label = $dpd->generate_label({
zip => '12555',
country => 'DE',
depot => '1090',
serial => '5012345678',
service_code => '101',
});
say $label->tracking_number;
say $label->d_sort;
use Business::DPD;
my $dpd = Business::DPD->new();
$dpd->connect_schema;
$dpd->set_originator_address({
name1 => 'DELICom DPD GmbH',
street => 'Wailandtstrasse 1',
postal => '63741',
city => 'Aschaffenburg',
country => 'DE',
phone => '06021/ 0815',
fax => '06021/ 0816',
email => 'test.dpd@dpd.com',
depot => '0176',
}));
my $label = $dpd->generate_label({
address => Business::DPD::Address->new($dpd,{ ... });
serial => '5012345678',
service_code => '101',
});
say $label->tracking_number;
say $label->d_sort;
DESCRIPTION
Calculate routing information for parcel sending via DPD (http://dpd.com)
Generate labels for parcels (including barcode)
METHODS
Public Methods
new
my $dpd = Business::DPD->new();
Perl default, Business::DPD will use the included SQLite DB and Business::DPD::DBIC::Schema
. If you want to use another DB or another schema-class, you can define them via the options schema_class
and dbi_connect
.
my $dpd = Business::DPD->new({
schema_class => 'Your::Schema::DPD',
dbi_connect => ['dbi:Pg:dbname=yourdb','dbuser','dbpasswd', { } ],
});
connect_schema
$dpd->connect_schema;
Connect to the Schema/DB specified in new.
Stores the DBIx::Class Schema in $dpd->schema
.
generate_label
my $label = $dpd->generate_label({
zip => '12555',
country => 'DE',
depot => '1090',
serial => '5012345678',
service_code => '101',
});
country_code
my $country_num = $dpd->country_code('DE');
country_alpha2
my $country = $dpd->country_alpha2(276);
routing_meta
my $routing_version = $dpd->routing_meta->version;
Returns Business::DPD::DBIC::Schema::DpdMeta object.
TO GENERATE DPD ROUTE DATABASE
cd Business-DPD
mkdir route-db
cd route-db
wget https://www.dpdportal.sk/download/routing_tables/rlatest_rev_dpdshipper_legacy.zip
unzip rlatest_rev_dpdshipper_legacy.zip
cd ..
rm -f lib/Business/DPD/dpd.sqlite
perl -Ilib helper/generate_sqlite_db.pl
perl -Ilib helper/import_dpd_data.pl route-db/
perl Build.PL
perl Build test
sudo perl Build install
AUTHOR
Thomas Klausner domm AT cpan.org
Jozef Kutej jozef@kutej.net
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.