Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Pages: 1
Bonjour,
Pour les besoins de mon application, je dois pouvoir déterminer la taille
de mes champs de type numérique dans une DW créée dynamiquement.
La propriété Coltype me permet de récupérer le nombre de décimales, mais pas la précision
du champ. (Ex: Sous Oracle, mon champ est un NUMBER(12,2), et je souhaiterai récupérer la valeur "12" )
Existe-t-il une solution dans PB, ou faut-il que je passe par le dictionnaire
de données Oracle (all_tab_columns)?
Je suis en PB6.5 et sous Oracle 8.1
d'avance
Hors ligne
Le probleme est que pb transforme le champs en decimal(X)
--> je ne vois pas comment recuperer la longueur autrement qu'avec la BDD
Hors ligne
J'ai peut etre rien compris au probleme mais si tu recupere le decimal, tu le met en string tu recherche dans chaine la virgule et tu prends ce qu'il y a avant.
Hors ligne
hellkinder a écrit:
J'ai peut etre rien compris au probleme mais si tu recupere le decimal, tu le met en string tu recherche dans chaine la virgule et tu prends ce qu'il y a avant.
Non, parceque là, je veux connaître la longueur maximale du champ, pas celle de la valeur saisie dans le champ.
Exemple: mon champ est un NUMBER(12,2) sous Oracle. PB me le transforme en decimal(2): J'ai donc accès au nombre de décimales après la virgule, mais pas à la précision du champ (12 ici en l'occurence, soit 10 chiffres avant la virgule, et 2 après)
C'est cette dernière information qu'il me faut.
Hors ligne
foon a écrit:
ou faut-il que je passe par le dictionnaire de données Oracle (all_tab_columns)?
ça me semble pas trop mal : tu fais une fonction(table,column) qui renvoie l'info
Hors ligne
Ok
Je vous tiens au courant.
les PBdonfeurs
Hors ligne
Pages: 1