Pas de problème (pb), que du PowerBuilder (PB) ^^

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 01-05-2010 21:16:29

seki  
0x73656B69
Award: bf
Lieu: Laquenexy & Luxembourg
Date d'inscription: 20-11-2008
Messages: 1118
Pépites: 4,296,080,204
Banque: 9,223,372,036,854,776,000
Site web

extension PBNI Cool Wrappers

J'ai encore une extension sous le coude mais je ne sais pas ça peut intéresser quelqu'un

[UPDATE] : ça y est c'est en ligne : chercher PbniCW sur ma page PB

Au menu :

- cwGetField / cwSetField : accès en lecture / écriture à n'importe quelle propriété d'un objet (par exemple x ou y d'un bouton, hauteur de liste ou fenêtre mais ça peut être aussi une variable membre d'un userobject. Par contre on ne peut pas accéder à des méthodes. Pour ceux qui se demandent à quoi ça peut servir : au lieu de devoir instancier un objet du bon type pour pouvoir interroger la propriété, ici il suffit de faire un getfield(powerobject, fieldname) et on reçoit la valeur de la propriété (dans un any)

- RetrieveVaArgs : permet de faire un retrieve() sur un datastore ou datawindow en passant les arguments dans un tableau de any, quand on fait du code dynamique et qu'on sait qu'une datawindow pourra être appelée avec un nombre d'arguments variables c'est très pratique, ça évite de devoir écrire plusieurs appels différents à retrieve (avec 1 argument, 2, 3, ... on finit toujours par tomber sur un cas non prévu)

- GetVersionInfoString, GetVersionInfoFixed accès en lecture à la ressource VersionInfo des exécutables et dll windows pour les descriptions et numéros de version (permet de pouvoir lire le mêmes infos que l'onglet "version" des propriétés de fichier dans explorer)

- opérations de bits AND, OR, XOR, NOT, rotation gauche et droite codée en C, pas avec des constructions / parcours de tableaux

- conversion ulong -> chaîne hexa ou octale

- enfin, un objet uo_transaction qui, utilisé à la place de l'objet de transaction habituel, permet de recevoir des notifications depuis la base de donnée à la manière d'une callback. Typiquement ça sert à indiquer une progression lors de l'exécution d'une procédure stockée. C'est spécifique pour une base ASA et cette partie a été compilée grâce au SDK fourni avec ASA / Sybase central. Je ne peux pas en distribuer le code par contre ceux qui ont Adaptive Server Anywhere peuvent recompiler.

Dernière modification par seki (17-05-2010 22:00:01)


The best programs are the ones written when the programmer is supposed to be working on something else. - Melinda Varian

Mes réponses PB sur StackOverflow
http://stackoverflow.com/users/flair/317266.png

Hors ligne

 

#2 01-05-2010 22:11:36

foon  
N2iGeek + MangasGeek = foon
Award: bf
Lieu: Bonchamp-Lès-Laval
Date d'inscription: 28-02-2007
Messages: 2486
Pépites: 85
Banque: 9,223,372,036,854,776,000

Re: extension PBNI Cool Wrappers

pour tous ces utilitaires

0.000 pépites


Seuls ceux qui ne font rien ne font jamais d'erreurs
http://www.nerdtests.com/images/badge/163124fb7fb459a3.gif

Hors ligne

 

#3 01-05-2010 22:51:59

seki  
0x73656B69
Award: bf
Lieu: Laquenexy & Luxembourg
Date d'inscription: 20-11-2008
Messages: 1118
Pépites: 4,296,080,204
Banque: 9,223,372,036,854,776,000
Site web

Re: extension PBNI Cool Wrappers

Merci, mais celle-ci n'est pas encore en ligne.

Je demandais seulement si ça intéresse quelqu'un

Bon, apparemment il y a preneur ? Faut que je voie avec mon collègue si ont met en ligne le module avec ou sans l'objet uo_transaction (à cause des soucis de license)


The best programs are the ones written when the programmer is supposed to be working on something else. - Melinda Varian

Mes réponses PB sur StackOverflow
http://stackoverflow.com/users/flair/317266.png

Hors ligne

 

#4 02-05-2010 20:58:03

foon  
N2iGeek + MangasGeek = foon
Award: bf
Lieu: Bonchamp-Lès-Laval
Date d'inscription: 28-02-2007
Messages: 2486
Pépites: 85
Banque: 9,223,372,036,854,776,000

Re: extension PBNI Cool Wrappers

Je suis effectivement preneur.
Mais ma réponse était aussi liée à tes trois autres topics


Seuls ceux qui ne font rien ne font jamais d'erreurs
http://www.nerdtests.com/images/badge/163124fb7fb459a3.gif

Hors ligne

 

#5 04-05-2010 13:24:46

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: extension PBNI Cool Wrappers

Salut Seki, je suis intéressé par GetVersionInfoString.


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#6 17-05-2010 23:36:29

seki  
0x73656B69
Award: bf
Lieu: Laquenexy & Luxembourg
Date d'inscription: 20-11-2008
Messages: 1118
Pépites: 4,296,080,204
Banque: 9,223,372,036,854,776,000
Site web

Re: extension PBNI Cool Wrappers

Ayé.


The best programs are the ones written when the programmer is supposed to be working on something else. - Melinda Varian

Mes réponses PB sur StackOverflow
http://stackoverflow.com/users/flair/317266.png

Hors ligne

 

#7 18-05-2010 08:40:47

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: extension PBNI Cool Wrappers


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#8 18-05-2010 11:34:38

shahin  
Modérateur
Award: bf
Lieu: val de marne
Date d'inscription: 26-09-2006
Messages: 938
Pépites: 8,675,050,269
Banque: 16,218,225,127,617

Re: extension PBNI Cool Wrappers


never let people work on more than one thing at once.

Hors ligne

 

#9 18-05-2010 11:50:32

foon  
N2iGeek + MangasGeek = foon
Award: bf
Lieu: Bonchamp-Lès-Laval
Date d'inscription: 28-02-2007
Messages: 2486
Pépites: 85
Banque: 9,223,372,036,854,776,000

Re: extension PBNI Cool Wrappers


Seuls ceux qui ne font rien ne font jamais d'erreurs
http://www.nerdtests.com/images/badge/163124fb7fb459a3.gif

Hors ligne

 

#10 18-05-2010 12:28:46

seki  
0x73656B69
Award: bf
Lieu: Laquenexy & Luxembourg
Date d'inscription: 20-11-2008
Messages: 1118
Pépites: 4,296,080,204
Banque: 9,223,372,036,854,776,000
Site web

Re: extension PBNI Cool Wrappers

Je liste sur la page de download les 2 bugs connus mais tout rapport de bug est bienvenu.

Et puis ça manque de documentation et de programme de test (au contraire de mes autres pbni).
Il faudrait que je revoie le programme de test (qui est resté en pb10 il me semble).
Aussi si vous avez des questions, n'hésitez pas à demander.

En retour, j'espère que vous me direz quelles sont les fonctions qui vous sont utiles


The best programs are the ones written when the programmer is supposed to be working on something else. - Melinda Varian

Mes réponses PB sur StackOverflow
http://stackoverflow.com/users/flair/317266.png

Hors ligne

 

#11 18-05-2010 14:13:10

shahin  
Modérateur
Award: bf
Lieu: val de marne
Date d'inscription: 26-09-2006
Messages: 938
Pépites: 8,675,050,269
Banque: 16,218,225,127,617

Re: extension PBNI Cool Wrappers

seki a écrit:

En retour, j'espère que vous me direz quelles sont les fonctions qui vous sont utiles

Justement, tu l'as en PB 10 ?


never let people work on more than one thing at once.

Hors ligne

 

#12 18-05-2010 15:17:01

seki  
0x73656B69
Award: bf
Lieu: Laquenexy & Luxembourg
Date d'inscription: 20-11-2008
Messages: 1118
Pépites: 4,296,080,204
Banque: 9,223,372,036,854,776,000
Site web

Re: extension PBNI Cool Wrappers

shahin a écrit:

Justement, tu l'as en PB 10 ?

Tu as essayé d'utiliser les PBX/PBD directement ?

Éventuellement juste le PBX, au besoin le PBD peut se refaire avec

Code:

pbx2pbd100 pbnicw.pbd pbnicw.pbx

(pbx2pbd100 est dans le répertoire program files\sybase\shared\powerbuilder)

Si ça ne fonctionne pas, je peux essayer de recompiler, sous la main, j'ai
- PB 10.0.??
- PB 10.2.1.9859
- PB 10.5.2.7826
- PB 11.5.1.4608 (j'ai des nouveaux EBF mais pas encore installés)


The best programs are the ones written when the programmer is supposed to be working on something else. - Melinda Varian

Mes réponses PB sur StackOverflow
http://stackoverflow.com/users/flair/317266.png

Hors ligne

 

#13 11-06-2013 07:57:47

Van  
Bienfaiteur du site
Award: bf
Lieu: mouvaux
Date d'inscription: 19-03-2013
Messages: 125
Pépites: 673
Banque: 41

Re: extension PBNI Cool Wrappers

J'ai un petit problème sur le source je ne trouve pas où est défini an_sql_code.

Est ce que tu pourrais me dire d'où ça viens seki?


Tant que ça bouge c'est pas mort, dans le doute frappe encore!
Ni dieu ni maître, sauf maître Kanter!

Hors ligne

 

#14 11-06-2013 08:10:21

seki  
0x73656B69
Award: bf
Lieu: Laquenexy & Luxembourg
Date d'inscription: 20-11-2008
Messages: 1118
Pépites: 4,296,080,204
Banque: 9,223,372,036,854,776,000
Site web

Re: extension PBNI Cool Wrappers

Van a écrit:

J'ai un petit problème sur le source je ne trouve pas où est défini an_sql_code.

Est ce que tu pourrais me dire d'où ça viens seki?

Tu peux me remettre dans le contexte ? (direct au saut du lit, je pourrais dire d'après nos conventions de nommage usuelles que an_sql_code pourrait être un paramètre de la fonction ou de l’événement dans lequel tu te trouves)


The best programs are the ones written when the programmer is supposed to be working on something else. - Melinda Varian

Mes réponses PB sur StackOverflow
http://stackoverflow.com/users/flair/317266.png

Hors ligne

 

#15 11-06-2013 08:59:50

Van  
Bienfaiteur du site
Award: bf
Lieu: mouvaux
Date d'inscription: 19-03-2013
Messages: 125
Pépites: 673
Banque: 41

Re: extension PBNI Cool Wrappers

Ouyi désolé c'est vrai que j'ai pas était des plus clair ^^'.

Je débute dans le C++ et j'ai plus toucher à VS depuis mes étude avec le C#, du coup je nage un peu mais je commence à trouver mes repère.

J'ai donc ajouter les dossier SDK de PB12.0 et sql anywhere dans c/c+/ligne de commande pour que le projet trouve les header qui vont bien.

Mais un des poblème de génération que j'ai c'est le an_sql_code dans PbniTransaction. C'est un des type de paramétres pour les méthodes Dispatch et NotifyMessage.


Tant que ça bouge c'est pas mort, dans le doute frappe encore!
Ni dieu ni maître, sauf maître Kanter!

Hors ligne

 

#16 11-06-2013 09:34:14

xlat  
0xc0000005
Award: bf
Lieu: Tanger (طنج)
Date d'inscription: 04-12-2010
Messages: 720
Pépites: 11,343
Banque: 100,221,387,868,884,300
Site web

Re: extension PBNI Cool Wrappers

Van a écrit:

...
Mais un des poblème de génération que j'ai c'est le an_sql_code dans PbniTransaction. C'est un des type de paramétres pour les méthodes Dispatch et NotifyMessage.

Soit tu n'as pas besoin d'utiliser ASA + la notification de messages du moteur et tu retires la définition de USE_ASA_ODBC dans ton projet, soit tu regardes pourquoi an_sql_code n'est pas définit, normalement il provient de :

PbniTransaction.h > extfnapi.h > sqldef.h > sqlca.h : typedef a_sql_int32     an_sql_code;


EDIT: si tu rencontres un message indiquant que la librairie dblibtm.lib est absente, c'est que l'architecture des répertoires de sql anywhere à changée (entre le 9.0.2.2451 et 9.0.2.3951) : il faut indiquer le dossier lib [ASA INSTALL]\win32\lib dans les propriétés de ton projet.


https://lut.im/eJINqa9o/vAtyxD0h "Don't believe everything you read on the Internet"
    -- Abraham Lincoln

www.ngs.ma

Hors ligne

 

#17 11-06-2013 12:08:07

Van  
Bienfaiteur du site
Award: bf
Lieu: mouvaux
Date d'inscription: 19-03-2013
Messages: 125
Pépites: 673
Banque: 41

Re: extension PBNI Cool Wrappers

Pour le coup j'aurais pas besoin de ASA mais j'aime bien bidouillé. Et éventuellement fournir la version pb12.1 comme je l'ai fait pour fastfuncs.

En fouillant il n'y avais pas de référence à sqldef.h dans extfnapi.h
J'ai fait un include direct de sqlca.h dans lePbniTransaction.h et ça passe.

Pour le problème de dblibtm.lib je suis effectivement tombé dessus mais le chemin lib n'était pas dans le format que tu a mis.
C'était un chemin "C:\Program Files (x86)\SQL Anywhere 11\SDK\Lib" dans lequel on trouve deux dossier : un pour X64 et un autre pour X86.


Me voilà maintenant sur deux avertissements TargetPath et un erreur  "MSB3073: La commande "pbx2pbd115 PbniCW.pbd PbniCW.dll :VCEnd" s'est arrêtée avec le code 9009." que je regarderai plus tard. J'ai pas le temps là.
Mais ça avance.


Tant que ça bouge c'est pas mort, dans le doute frappe encore!
Ni dieu ni maître, sauf maître Kanter!

Hors ligne

 

#18 11-06-2013 12:15:21

seki  
0x73656B69
Award: bf
Lieu: Laquenexy & Luxembourg
Date d'inscription: 20-11-2008
Messages: 1118
Pépites: 4,296,080,204
Banque: 9,223,372,036,854,776,000
Site web

Re: extension PBNI Cool Wrappers

Van a écrit:

La commande "pbx2pbd115 PbniCW.pbd PbniCW.dll :VCEnd" s'est arrêtée avec le code 9009."

la commande pbx2pbd sert à fabriquer un pbd contenant les déclarations des objets et fonctions fournis dans un pbx (qui n'est rien de plus qu'une dll avec l'extension "pbx"). Ce pbd est ensuite ajouté dans la liste des librairies d'un projet pour pouvoir être appelé. Je sais qu'il est possible d'ajouter le pbx directement dans le projet et que pb arrive à se débrouiller.

Bizarre, Là on dirait que ton projet fabrique un "pbnicw.dll" alors que normalement c'est "pbnbicw.pbx". Le problème ne viendrait pas d'un mauvais nom dans les paramètres du linker ?


The best programs are the ones written when the programmer is supposed to be working on something else. - Melinda Varian

Mes réponses PB sur StackOverflow
http://stackoverflow.com/users/flair/317266.png

Hors ligne

 

#19 11-06-2013 12:22:57

Van  
Bienfaiteur du site
Award: bf
Lieu: mouvaux
Date d'inscription: 19-03-2013
Messages: 125
Pépites: 673
Banque: 41

Re: extension PBNI Cool Wrappers

J'ai pas encore regardais où se trouvais lelien vers pbx2pbd.
ton projet pointais vers la version 115 que je n'ai pas donc forcément ça marche moins bien ^^". Je regarderais pour changer ça plus tard.


Tant que ça bouge c'est pas mort, dans le doute frappe encore!
Ni dieu ni maître, sauf maître Kanter!

Hors ligne

 

#20 11-06-2013 12:52:49

seki  
0x73656B69
Award: bf
Lieu: Laquenexy & Luxembourg
Date d'inscription: 20-11-2008
Messages: 1118
Pépites: 4,296,080,204
Banque: 9,223,372,036,854,776,000
Site web

Re: extension PBNI Cool Wrappers

Avec chaque version de PB il y a une commande pbx2pbd différente (p.ex: pbx2pbd100, pbx2pbd115, ...) si tu es avec PB 12.1, je présume que tu dois avoir un pbx2pbd120 (non testé).

Pour d'autres pbni, j'ai modifié le projet pour avoir des targets différentes PB10 / PB11 / PB12, je devrais faire ça aussi pour pbnicw mais on y touche beaucoup moins souvent.

Au fait, Xlat me faisait remarquer que tu tentes l'aventure avec ASA11... c'est totalement non testé, à l'époque où on écrit ça on n'avait que la version 9. Je ne dis pas que ça ne fonctionnera forcément pas, juste que là tu explores l'inconnu


The best programs are the ones written when the programmer is supposed to be working on something else. - Melinda Varian

Mes réponses PB sur StackOverflow
http://stackoverflow.com/users/flair/317266.png

Hors ligne

 

#21 11-06-2013 14:03:04

Van  
Bienfaiteur du site
Award: bf
Lieu: mouvaux
Date d'inscription: 19-03-2013
Messages: 125
Pépites: 673
Banque: 41

Re: extension PBNI Cool Wrappers

Comme je l'ai dis je n'utiliserai pas ASA, et pour tout dire j'aurais pas vraiment le temps de me lancer dans des tests sur ce point... Je regarderais peut être plus tard si j'ai le temps comment se servir de ASA et en faire des tests.

Le but pour moi c'est en parti d'apprivoisé VS et de réussir à le faire compilé sans erreur (et dans son intégralité) dans un premier temps.
Tester ce qui m'intéresse retreiveVarArg en l'occurence.
Et faire un retour du source version PB12 qui pourrais servir à d'autres (sur GitHub si vous mettais vos sources dessus comme pour le dwDebugMachine)

Dernière modification par Van (11-06-2013 14:05:23)


Tant que ça bouge c'est pas mort, dans le doute frappe encore!
Ni dieu ni maître, sauf maître Kanter!

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22