2017-06-09 1 views
0

J'ai un rml fichier qui est utilisé pour générer code-barres dans mon programme.
Dans ce fichier RML:odoo Rml Barcode fonction personnalisée appel à l'intérieur de l'étiquette

<barCode code='EAN13' >[[data['something'] or '']]</barCode> 

est la ligne qui génère code à barres pour mon dossier qui précise que le code à barres à générer doit être un format EAN13.

Cependant, je voudrais préciser le code en fonction de mes valeurs, je l'ai essayé d'utiliser quelque chose comme:

<barCode code='get_code()' >[[data['ean13'] or '']]</barCode> 

Où ma:

def get_code(self, ean): 
     if something.something=='some': 
      return 'EAN13' 
     else: 
      return 'Code128' 

Cependant, il ne fonctionne pas pour une raison quelconque.

Comment puis-je utiliser un if Condition à l'intérieur une étiquette dans un RML?

+0

Un 'if'loop? 'if' n'est pas une boucle. – Badda

+0

désolé pour cela je voulais dire une condition si –

Répondre

0

En fin de compte je fini par créer 2 séparés fichiers RML et donnant appel à ces fichiers en fonction de ce que la valeur i requird si je voulais egenerate un code à barres EAN13 je qualifierais fichier avec

<barCode code='EAN13' >[[data]]</barCode> 

et si le type 128 j'appellerais un fichier rml totalement différent

<barCode code='Code128' >[[data']]</barCode>