Réf. : Re: [toulouse-pm] Question Stupide

eric.vernichon.ev at borchers.fr eric.vernichon.ev at borchers.fr
Fri Sep 20 04:18:42 CDT 2002


Bonjour ,

le probléme ne vient pas du nom de la fonction  puisque ça marche si je ne 
place pas l'appel dans une fonction.

Je pensais que cela devait venir d'un probléme de portée des variables du 
module j'ai peut etre
oublier un truc évident 

Eric






Michel Rodriguez <mrodrigu at mirlin.xmltwig.com>
20/09/2002 13:06

 
        Pour :  eric.vernichon.ev at borchers.fr
        cc :    Toulouse Perl Mongers <toulouse-pm at happyfunball.pm.org>
        Objet : Re: [toulouse-pm] Question Stupide


On Fri, 2002-09-20 at 09:45, eric.vernichon.ev at borchers.fr wrote:
>                 Bonjour ,
> 
> 
>         Plus je regarde passer vos mails plus j'ai peur de poser des 
> questions ( à la c.. ) .

Non, n'hesite pas a poser des questions, d'une part c apeut t'apporter
des reponses ;--) et d'autre part c'est toujours interessant pour tout
le monde de voir ce que font d'autres programmeurs.

La je dois dire que je sais pas repondre, surtout que je suppose qu'il
faut avoir SAP installe, et avec la bonne BD dedans, pour pouvoir faire
tourner ce script.

Quelques conseils quand meme: utilise le debuggeur: 

perl -d le_script_qui_plante

n execute l'instruction suivante (celle qui est affichee)
s pareil mais rentre dans une fonction si necessaire
b <numero de ligne> pose un breakpoint
c continue jusqu'au prochain breakpoint
x <variable> affiche la variable (est se demerde si c'est un hash, un
objet ou un truc comme ca)

tu peux meme faire x <expression>, donc par exemple (sans les
commentaires ;--), si $it->QUERY_TABLE($table) est en ligne 24:
perl -d script
b 24                        # c'est la qu'est le probleme
c                           # on y va
x $table                    # juste pour verifier que la variable est OK
x $it                       # affiche l'objet, pas forcement utile si 
                            # c'est une structure en C
x can( $it->QUERY_TABLE)    # est-ce que $it a une methode QUERY_TALE
x $it->QUERY_TABLE($table); # ca devrait planter la

apres tu peut faire man perldebug ou perldoc perldebug (ou regarder la
doc de pour en savoir plus
Et ouis rien ne t'empeche d'aller voir dans
C:/Perl/site/lib/SAP/Iface.pm line pour voir les methodes qui existent
(la encore, si le module est juste une interface vers du C ta methode
est pas forcement la).

Oh, et new SAP::Rfc est obsolete (si tu a une fonction qui s'appelle new
dans ton programme c'est elle qui sera appelee et pas le new de
SAP::Rfc, en plus ca marche plus en perl 5.8.0), il vaut mieux ecrire
SAP::Rfc->new( ...); (je sais, j'ai du changer ca dans mon module et
dans tous mes examples ya pas longtemps ;--(

Bonne chance
 
-- 
Michel Rodriguez
Perl &amp; XML
http://www.xmltwig.com







More information about the Toulouse-pm mailing list