Rispondo a entrambi.
Innanzitutto grazie per le risposte.

Il giorno lun, 19/06/2006 alle 18.08 +0200, [EMAIL PROTECTED] ha scritto:
> [...cut...]
> >  per quale motivo una foreign key
> > di un sottoformulario dovrebbe assumere il valore di default (0) e non
> > il valore dato dal formulario a cui è legato?
> > [...cut...]
> >   
> scusa ma hai definito il legame come foreign key in mysql o hai 
> semplicemente messo in relazione gli id nei formulari di OOo?

Ho fatto entrambe le cose, come in un altro formulario (che peraltro
funge... :@ )

> se leghi una foreign key ad un'altra tabella la chiave non può assumere 
> valore nullo (nella tabella di destinazione la foreign key è una primary 
> key per cui non può esser nulla)

Infatti, ma mysql mette in automatico il valore di default della FK a 0,
quando specifico che il campo deve essere INTEGER e "not null"

> vediamo, mi servirebbe  una villa, una auto nuova... e varie quisquiglie
> 

...ci si può pensare... ;)  ...qui le case nn costano troppo (non COSI'
poco, però! :)  )


Il giorno lun, 19/06/2006 alle 18.49 +0200, Davide Prina ha scritto: 
> --- "A. Chines" ha scritto: 
> [..cut..]
> Presumo che quando parli di un formulario e sottoformulario intendi le
> tabelle che sono visualizzate in tali elementi.

Si, esattamente: le varie tabelle, caselle di riepilogo, campi a maschera... 
per l'inserimento dei dati.

> Quindi dici che nella tabella visualizzata nel sottoformulario viene
> visualizzato zero nella colonna che è foreign key della tabella
> visualizzata nel formulario.

Esattamente

> 
> Questo può essere vero se e solo se nella
> tabella rappresentata nel formulario esiste il valore 0 nel campo il
> cui indice è foreign key dell'altra tabella (quella visualizzata nel
> sottoformulario), se non è così, allora hai sbagliato a creare la
> relazione di foreign key fra le due tabelle ... l'alternativa sarebbe
> che la foreign key non funziona e non penso debba/possa essere presa in
> considerazione.

..nn saprei...
Le due tabelle sono così strutturate:
tb_out-dev
  IdDo       INT PK
  DoRepId    INT FK
  DoDate     DATE
  DoDPaiem   INT FK
  DoMPaiem   INT FK
  DoNotes    VARCHAR(100)
  DoAnsId    INT FK
  DoLangId   INT FK
  DoNum      VARCHAT(8)
  DoTs       TIMESTAMP

tb_out-devpos
  IdOdpos    INT PK
  TsOdp      TIMESTAMP
  OdPos      INT
  OdText     VARCHAR(100)
  OdQte      DECIMAL(4,2)
  OdPU       DECIMAL(4,2)
  OdDelai    DATE
  OdId       INT FK  -----> FK legata a IdDo della tb_out-dev

...stesso legame che specifico nel sottoformulario.
Il fatto è che ho altri formulari strutturati nello stesso modo; e
funzionano.
Ho controllato anche visualizzando i campi della FK e negli altri si
aggiornano cambiando al variare del record del formulario principale,
mentre in questo no: rimane a 0 come il valore di default impostato da
mysql...   :'(  :doh:


-- 
Saluti.
A-Lex

OOo 2.0.2 su FedoraCore5 e wXP

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Rispondere a