[genropy] Re: Errore in batchUpdate

  • From: Luigi Renna <luigi@xxxxxxxxxxxxx>
  • To: genropy@xxxxxxxxxxxxx
  • Date: Wed, 22 Mar 2017 18:55:26 +0100

No, non voglio fare nessuna elaborazione sulle colonne virtuali io faccio quel semplice batchUpdate, la colonna virtuale la prende lui in automatico, infatti se vado nella definizione della tabella e metto come caption_field una colonna reale (tipo il cognome) non dà l'errore.


Il 22/03/2017 18:48, Giovanni Porcari ha scritto:

Il giorno 22 mar 2017, alle ore 18:21, Luigi Renna <luigi@xxxxxxxxxxxxx> ha 
scritto:

quando eseguo un batchUpdate (all'interno di una procedura batch) tipo:

self.batchUpdate(dict(abilitato=False), table='presenze.anagrafica', 
where='$id' IS NOT NULL)

e lui comincia l'esecuzione se nella definizione della tabella è presente come 
caption_field un campo dato da un formulaColumn da un errore di key error, 
penso che dipenda da quello che la procedura vuole visualizzare nel termometro, 
suppongo il caption field della tabella.

        tbl = pkg.table('anagrafica', pkey='id', name_long='Anagrafica',
                        name_plural='Anagrafiche', caption_field='cognome_nome',
                        partition_zona_id='zona_id')

        tbl.formulaColumn('cognome_nome', "$cognome ||' '||$nome", 
name_long='Nominativo', name_short='Nominativo')


Il 22/03/2017 17:55, Giovanni Porcari ha scritto:
Il giorno 22 mar 2017, alle ore 17:54, Luigi Renna <luigi@xxxxxxxxxxxxx> ha 
scritto:

Se si esegue il batchUpdate ed il caption_field di una table è un formulaColumn 
da un errore di key error sul campo del formulaColumn.

Ciao luigi
Puoi darmi qualche info di più ?



G




Si. Dipende da quello.

Nella batchUpdate di default vengono prese tutte le colonne reali.
Quellòe virtualio che dovessero servire (per qualsiasi ragione)
le devi chiedere esplicitamente col parametro columns:

self.batchUpdate(columns='*,$cognome_nome',dict(abilitato=False), 
table='presenze.anagrafica', where='$id' IS NOT NULL)

Ciao

G



Other related posts: