Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]6828[/thread]

Palm::PDB && Palm::Address

Leser: 2


<< |< 1 2 >| >> 13 Einträge, 2 Seiten
the_brain
 2005-03-30 16:51
#53091 #53091
User since
2004-08-19
30 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hi, ich erhalte folgende Ausgabe wenn ich versuche mit dem CPAN-Modul Palm::Address und Palm::PDB die PDB-Datei mit der Funktion Write zu erstellen:
Code: (dl )
 Can't locate object method "PackAppInfoBlock" via package "Palm::PDB" at /usr/share/perl5/Palm/PDB.pm line 973.


ich benutze folgende codesnipsel dazu:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
        eval "use Palm::PDB";
eval "use Palm::Address";
if ( ! $@ )
{
my $pdb = Palm::PDB->new();
my $record = undef;
foreach ( $self->{SQL}->fetch_db_hash ("SELECT * FROM Addressbook WHERE $where") )
{

$record = Palm::PDB->new_Record();

$record->{fields}{name} = $_->{name};

$record->{fields}{firstName} = $_->{firstname};

$record->{fields}{company} = $_->{company};

$record->{fields}{phone1} = $_->{phone_work};

$record->{fields}{phone2} = $_->{phone_private};

$record->{fields}{phone3} = $_->{fax};

$record->{fields}{phone4} = $_->{phone_dial_switching}; #other / vermittlung

$record->{fields}{phone5} = $_->{email};

$record->{fields}{address} = $_->{street};

$record->{fields}{city} = $_->{city};

$record->{fields}{state} = $_->{state};

$record->{fields}{zipCode} = $_->{zipcode};

$record->{fields}{country} = $_->{country};

$record->{fields}{title} = $_->{title1};
#
$record->{fields}{custom1}
#
$record->{fields}{custom2}
#
$record->{fields}{custom3}
#
$record->{fields}{custom4}

$record->{fields}{note} = $_->{text};
#
$record->{category} = 0;
#
$record->{attributes}{dirty} = 1;

$pdb->append_Record ( $record );
}
$pdb->Write( $self->{CONFIG}->get_ini_value("TEMP_DIR")."/AddressDB".$Lanas::Base::key{USER}.".pdb");
if ( -e $self->{CONFIG}->get_ini_value("TEMP_DIR")."/AddressDB".$Lanas::Base::key{USER}.".pdb" )
{

return $self->translate("Datei wurde erstellt");
}
else
{

return $self->translate("Datei konnte nicht erstellt werden");
}
}


weiss jemand woran das liegen könnte? Die "PackAppInfoBlock" liegt in der Palm::Raw normalerweise erben die untereinander voneinander???

Danke für Eure Hilfe

Gruss
Martin
ptk
 2005-03-30 17:22
#53092 #53092
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
[quote=the_brain,30.03.2005, 14:51]
Code: (dl )
1
2
3
4
5
        eval "use Palm::PDB";
eval "use Palm::Address";
if ( ! $@ )
{
[/quote]
Wahrscheinlich keine Loesung fuer dein Problem, aber: Wenn Palm::PDB nicht gefunden wird, laeuft dein Skript trotzdem durch! Besser beide use-Statements in ein eval packen.
the_brain
 2005-03-30 17:41
#53093 #53093
User since
2004-08-19
30 Artikel
BenutzerIn
[Homepage] [default_avatar]
ne, leider keine lösung :-D
aber trotzdem danke für den hinweis
the_brain
 2005-03-31 11:39
#53094 #53094
User since
2004-08-19
30 Artikel
BenutzerIn
[Homepage] [default_avatar]
niemand ne ahnung woran das liegen könnte?
renee
 2005-03-31 12:17
#53095 #53095
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
rufst Du die Methode auch über das Objekt auf? Also $pdb->PackAppInfoBlock()

bzw. hast Du eine aktuelle Version von dem Palm-Bundle? Nicht, dass erst im Laufe der Entwicklung die Funktion dazugekommen ist...\n\n

<!--EDIT|renee|1112257145-->
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
ptk
 2005-03-31 12:28
#53096 #53096
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Macht es vielleicht einen Unterschied, wenn die use-Statements ausserhalb von eval stehen? (Sollte nicht, aber vielleicht wurde in den Modulen verbotene Zauberei verwendet)
the_brain
 2005-04-03 10:47
#53097 #53097
User since
2004-08-19
30 Artikel
BenutzerIn
[Homepage] [default_avatar]
Quote
rufst Du die Methode auch über das Objekt auf? Also $pdb->PackAppInfoBlock()

bzw. hast Du eine aktuelle Version von dem Palm-Bundle? Nicht, dass erst im Laufe der Entwicklung die Funktion dazugekommen ist...


Ich rufe $pdb->Write() auf - die wiederrum ruft PackAppInfoBlock auf (und das scheint nicht zu gehen). Habe die aktuelle Version mit apt-get gezogen.

Quote
Macht es vielleicht einen Unterschied, wenn die use-Statements ausserhalb von eval stehen? (Sollte nicht, aber vielleicht wurde in den Modulen verbotene Zauberei verwendet)


ne, leider nicht. gleicher fehler

vielen dank trotzdem an euch beide. noch jemand vorschläge?
the_brain
 2005-04-03 11:41
#53098 #53098
User since
2004-08-19
30 Artikel
BenutzerIn
[Homepage] [default_avatar]
kann es evtl. sein, dass man mit dem modul gar keine neuen dateien erzeugen kann, sondern nur bestehende bearbeiten?
the_brain
 2005-04-05 23:21
#53099 #53099
User since
2004-08-19
30 Artikel
BenutzerIn
[Homepage] [default_avatar]
kann mir hier niemand weiterhelfen? keinerlei erfahrung mit palm::pdb?

gibt es alternativen?
ptk
 2005-04-06 14:38
#53100 #53100
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Lass es mal unter dem Perl-Debugger laufen, evtl. einfach im Trace-Modus.
<< |< 1 2 >| >> 13 Einträge, 2 Seiten



View all threads created 2005-03-30 16:51.