[genropy] Re: hdbselect in una webpage

  • From: Francesco Porcari <francesco.porcari@xxxxxxxxxxx>
  • To: genropy@xxxxxxxxxxxxx
  • Date: Sun, 5 Nov 2017 17:39:19 +0100



Il giorno 05 nov 2017, alle ore 12:00, Alessandro Tufi 
<alessandro.tufi@xxxxxxxxx> ha scritto:



-------- Original Message --------
Subject: hdbselect in una webpage
From: Alessandro Tufi <alessandro.tufi@xxxxxxxxx>
To: genropy <genropy@xxxxxxxxxxxxx>
Date: 03/11/2017 15:51

Ora vorrei creare un campo identico in una webpage; come posso fare? Non 
riesco a usare il tag "hdbselect":
fb.filteringSelect('^.application_field', folderSelectable=True, ..... ?...) 

Sono arrivato fin qui:
- in testata ho aggiunto
py_requires="""public:Public,th/th:TableHandler"""

- il campo è ora visualizzato così:
fb.hdbselect(
            '^.application_field',
            folderSelectable=True, value='',
            dbtable='fcrm.op_application_field’)





La tabella fcrm.op_application_field è gerarchica

Putroppo ancora non funziona:
- a destra del campo c'è la tendina che visualizza correttamente un'albero 
con i valori presi dalla tabella ma se seleziono un valore tutto il form si 
"sbianchetta" (e la selezione non viene riportata a video). In console non ci 
sono errori
- indizio: senza value='' la pagina da errore..

Insomma, mi sento ancora lontano dalla soluzione



scusa mi sembra ce ci sia un bel errorone ossia hai lasciato value=‘’ e messo 
come primo parametro  '^.application_field’
invece value dovresti usarlo perché è proprio dove vai a settare il valore che 
selezioni con l’hdbselect. Quindi mi sembrerebbe molto più logico che tu 
scrivessi così


fb.hdbselect(
            value='^.application_field',
            folderSelectable=True, 
            dbtable=‘fcrm.op_application_field’,
        lbl=‘Application')


ti allego anche un test funzionante dell’hdbselect

# -*- coding: UTF-8 -*-

# test_multidb.py
# Created by Francesco Porcari on 2011-11-28.
# Copyright (c) 2011 Softwell. All rights reserved.

"Test page description"
class GnrCustomWebPage(object):
    py_requires="gnrcomponents/testhandler:TestHandlerFull,th/th:TableHandler"

    def windowTitle(self):
        return ''
         
    def test_0_hdbselect(self,pane):
        fb = 
pane.formbuilder(cols=1,border_spacing='3px',table='studio.pr_evento')
        fb.field('tipo_evento_id',tag='hdbselect',condition="$categoria=:cat",
                    condition_cat='CI',
                    rowcaption='$description',
                    #validate_notnull=True,validate_notnull_error='!!Campo 
Necessario',
                    lbl='Tipo',hasDownArrow=True,width='14em')
A domani
Ale


Saluti
Francesco

Other related posts: