Forum Rules Remarque importante:

Lorsque vous postez un probléme en relation avec ABAL ou WABAL, merci de préciser la version utilisée, le systéme d'exploitation d'exécution, la version du CRITERIA et la version de l'executeur ainsi que toutes informations permettant de connaitre le contexte d'execution . cela evite de poster un message pour vous demander ces précisions !!!

  Reply to this topicStart new topicStart Poll

> Format pour caractère séparateur décimal
root
Posted: 02/10/18 17:47
Quote Post


God of the forum
*******

Group: Admin
Posts: 6098
Member No.: 2
Joined: 10/05/02
Submissions: 10 
Downloads: 19



dans la doc abal il est indiqué que l'on peut préciser le séparateur des décimales en précisant dans le format
.(*) où le caractères étoile est le caractère à utiliser

Exemple .(,) si on veut une virgule

Je veux un point comme séparateur des décimal et non une virgule
Je n'arrive pas à trouver la bonne syntaxe

Avec ce code
formate="-9z.zz"
ft =fm((formate))
ligne =print(((ft)),montant)
on a une virgule comme séparateur

lorsque j'essai de préciser le caractère séparateur de décimal j'obtiens une erreur de format
formate="-9z.(.)zz"
ft =fm((formate))
ligne =print(((ft)),montant)
==> erreur 112 erreur de format

Quelqu'un maitrise t'il les formats abal ?
PM
Top
GUIARD
Posted: 02/10/18 21:10
Quote Post


Martien User
******

Group: Membre
Posts: 1730
Member No.: 239
Joined: 25/04/03
Submissions: None Submitted
Downloads: No Files Downloaded



Bonsoir, root

Je viens d'envoyer ta question au service Abal-Criteria chez Prologue.
Si, ils me répondaient, je te transmettrai leur réponse.

A+
Jerome
PMEmail PosterUsers Website
Top
biloute
Posted: 03/10/18 04:38
Quote Post


Ultra User
****

Group: Membre
Posts: 323
Member No.: 194
Joined: 10/02/03
Submissions: None Submitted
Downloads: No Files Downloaded



bonsoir Root,


chez moi j'ai directement la , sans rien faire.

pour ma part j'ajouterais juste ligne=tran(".",",",1,ligne).. même si ça n'est pas une solution satisfaisante.


Bonne journée
PM
Top
root
Posted: 03/10/18 09:15
Quote Post


God of the forum
*******

Group: Admin
Posts: 6098
Member No.: 2
Joined: 10/05/02
Submissions: 10 
Downloads: 19



Merci jerome,
Je ne voulais pas déranger le support prologue, mais j'aurais probablement fait appel à eux si la communauté n'avait pas la réponse

Merci biloute,
J'avais bien pensé faire cela aussi
mais j'aurais quand même bien aimé connaitre la syntaxe exacte pour le séparateur des décimal
PM
Top
root
Posted: 03/10/18 09:34
Quote Post


God of the forum
*******

Group: Admin
Posts: 6098
Member No.: 2
Joined: 10/05/02
Submissions: 10 
Downloads: 19




l'instruction suivante fonctionne
ligne=print((.(.)-8z.zz),valeur)


en revanche

formate=".(.)-8z.zz"
ft =fm((formate))
ligne =print(((ft)),montant)
produit une erreur 112 sur l'instruction ft =fm((formate))
PM
Top
GUIARD
Posted: 03/10/18 11:18
Quote Post


Martien User
******

Group: Membre
Posts: 1730
Member No.: 239
Joined: 25/04/03
Submissions: None Submitted
Downloads: No Files Downloaded



Nouveau tiddler
3 octobre 2018 à 12h18
Voici un exemple avec la bonne syntaxe, avec ici un point-virgule comme séparateur.

L’exemple dans le Manuel de Référence est faux : ASK=1:"Prix :"=(.(,)N3.Z2),Prix_unitaire
De plus il est situé dans la syntaxe du ASK !?


program "testformat"

segment 0

dcl format$=128
dcl ft$=256
dcl ligne$=256
dcl montant
dcl montant2

print=1: "testformat.at", tabv(1)

montant=123.456

print=1:tabv(1)
ask=1:"Montant :"=(.(;)(N3.Z2)),montant2 ; Sans effet ds un ASK
print=1:tabv(1), (.(.)(N3.Z2)), montant2


format="(.(.)(N3.Z2))"
ft =fm((format))

print=1:tabv(1)
print=1:((ft)),montant,tabv(1)

ligne =print(((ft)),montant)
print=1:tabv(1)
print=1:ligne,tabv(1)

pause "..."

eseg 0

end


This post has been edited by GUIARD on 03/10/18 11:22
PMEmail PosterUsers Website
Top
GUIARD
Posted: 03/10/18 17:36
Quote Post


Martien User
******

Group: Membre
Posts: 1730
Member No.: 239
Joined: 25/04/03
Submissions: None Submitted
Downloads: No Files Downloaded



J’ai enlevé le ASK pour faire propre. Le programme suivant fonctionne !
On a bien à l’affichage un point-virgule à la place de la virgule…

program "testformat"

segment 0

dcl format$=128
dcl ft$=256
dcl ligne$=256
dcl montant

print=1: "testformat.at", tabv(1)

montant=123.456

print=1:tabv(1), (.(;)(N3.Z2)), montant

format="(.(;)(N3.Z2))"
ft =fm((format))

print=1:tabv(1)
print=1:((ft)),montant

ligne =print(((ft)),montant)
print=1:tabv(1)
print=1:ligne,tabv(1)

pause "..."

eseg 0

end

PMEmail PosterUsers Website
Top
GUIARD
Posted: 04/10/18 09:15
Quote Post


Martien User
******

Group: Membre
Posts: 1730
Member No.: 239
Joined: 25/04/03
Submissions: None Submitted
Downloads: No Files Downloaded



Bonjour Stéphane

Pour ton erreur 112

La bonne syntaxe est

formate="(.(.)(-8Z.ZZ))"
ft =fm((formate))
ligne =print(((ft)),montant)

et non

formate=".(.)-8z.zz"
ft =fm((formate))
ligne =print(((ft)),montant)

A+
(merci Bernard)




Attached Image
Attached Image
PMEmail PosterUsers Website
Top
root
Posted: 05/10/18 14:58
Quote Post


God of the forum
*******

Group: Admin
Posts: 6098
Member No.: 2
Joined: 10/05/02
Submissions: 10 
Downloads: 19



oui merci jérome
c'est ce que j'en ai déduit aussi à la lecture de ton premier message
il faut aussi encadrer le format par des ( ) c'est cela qui provoquait l'erreur 112


formate="(.(.)(-8Z.ZZ))"
il y a un niveau de parenthèse superflu
formate=".(.)(-8Z.ZZ)" et suffisant pour obtenir de bon ft =fm((formate))

Merci jérome
PM
Top
GUIARD
Posted: 06/10/18 21:50
Quote Post


Martien User
******

Group: Membre
Posts: 1730
Member No.: 239
Joined: 25/04/03
Submissions: None Submitted
Downloads: No Files Downloaded



Merci Bernard
PMEmail PosterUsers Website
Top
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

Topic Options Reply to this topicStart new topicStart Poll

 

webcron.org Get Firefox! prologue-community.org est monitoré par ikoula.fr Referenceur Gratuit www.prologue-community est mis en évidence sur internet grace à daubresse.fr
moteur de recherche - referencement
Conformément à l'article 34 de la loi "Informatique et Liberté" vous disposez d'un droit d'accès, de modification, de rectification et de suppression des données qui vous concernent.
Pour l'exercer, merci de nous contacter : CONTACT US

www.prologue-community.org n'est pas enregistré à la CNIL
www.prologue-community.org est hébergé sur visit.fr

www.prologue-community.org est indépendant de la société Prologue
Une grande partie des logiciels et outils cités sur www.prologue-community.org sont des produits et marques déposées par la société Prologue


MKPortal M1.1 Rc1 ©2003-2005 All rights reserved
Page generated in 0.03016 seconds with 2 queries