while($sth->fetch()) {
my %hash;
# Hash zusammenbasteln
$hash{"kurzname"} = $kurzname;
$hash{"plz"} = $plz;
$hash{"stadt"} = $stadt;
$hash{"status"} = $status;
$hash{"typ"} = $typ;
$hash{"zusatz"} = $zusatz;
push(@ary,%hash);
}
$sth->finish();
$dss->updatePLZInformationen(@ary);
####
sub updatePLZInformationen() {
my @data = shift;
my $plz = SOAP::Lite
-> service('file:/home/orca/oracle/DataSyncTool/config/SKADataService.wsdl');
my $serializer = $plz->serializer();
print($serializer->envelope(
method => 'updatePLZInformationen',
SOAP::Data->type("xsd:string")->name( "clientid" => "test" ),
SOAP::Data->type("xsd:string")->name( "securitytoken" => "test" ),
SOAP::Data->type("tns2:PLZInfo")->name("plzinfos")->value(
\SOAP::Data->value(&format_plz_infos(@data)))));
$plz->updatePLZInformationen();
}
# ------------------------------------------------------------------------------------------------ #
sub format_plz_infos() {
my @plz = shift();
my @plz_info;
foreach(@plz) {
my $hash = $_;
push(@plz_info,SOAP::Data->name("kurzname")->value($hash->{"kurzname"})->type("xsd:string"));
push(@plz_info,SOAP::Data->name("plz")->value($hash->{"plz"})->type("xsd:string"));
push(@plz_info,SOAP::Data->name("stadt")->value($hash->{"stadt"})->type("xsd:string"));
push(@plz_info,SOAP::Data->name("status")->value($hash->{"status"})->type("xsd:string"));
push(@plz_info,SOAP::Data->name("typ")->value($hash->{"typ"})->type("xsd:string"));
push(@plz_info,SOAP::Data->name("zusatz")->value($hash->{"zusatz"})->type("xsd:string"));
}
return(@plz_info);
}
# ------------------------------------------------------------------------------------------------ #
####
?xml version="1.0" encoding="UTF-8"?>
test
test