Autore Topic: Memorizzare commenti dai documenti  (Letto 3500 volte)

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Memorizzare commenti dai documenti
« Risposta #15 il: 09 Aprile 2010, 21:46:19 »
Nella Form che hai allegato ed in particolare nel pannello "Tipo Documento", fra gli oggeti disegnati, ci sono "CD.Causale" ed il "Nr. Documento". Credo che essi corrispondano alle colonne "causale" e "nrdoc" della "tabella_testata".
Esatto

Quali dei due è univoco, o nessuno dei due? Guardondo l'etichetta di riferimento, il primo dovrebbe essere ripetitivo, sia relativamente allo stesso cliente che ad altri clienti, il secondo potrebbe essere assoluto, quindi nella "tabella_testata" si dovrebbe incontrare, per lo stesso anno,  una e una sola volta. Ho capito bene?
Hai capito bene

Sarebbe bene infatti individuare una colonna contenente codici mai ripetibili; una ci sarebbe, la "id-tedoc", se corrispondesse ad un id integer autoincrementale; l'importante è però che la tabella non venga mai sottoposta a procedure di ordinamento che possano modificare il contenuto di "id-tedoc" e la sequenza originaria delle righe di tabella. 
Si, corrisponde ad un id di tipo integer auto_increment.
Cosa intendi per "procedure di ordinamento"?
Per come ho impostato io il programma funziona così:
emetto un documento, che è unico per tipo, numero e data legato al cliente, entro il 15 del mese (scadenza iva) successivo l'utente puo modificare o cancellare il documento, quindi verranno interessate anche le righe di commento, successivamente a tale data il documento si potrà solamente visualizzare e non sarà più ne modificabile, ne cancellabile.

Le righe di commento, mi pare di capire, servono in stampa nel documento finale, ma serve anche che siano sempre visibili nella gridview, sotto la relativa riga di dettaglio articolo,  o le vuoi vedere solo, per esempio, all'atto della selezione della riga che ti interessa?
Sì, per quanto riguarda stampa e la visualizzazione. Per quanto riguarda il metodo, diciamo che non ho al momento una preferenza.
Diciamo che il metodo che hai indicato, della ListBox o ListView può anche andar bene, ti posso dire in base anche alla tua esperienza e ai tuoi suggerimenti scegliamo la strada meno complicata ma funzionale. Poi sai come è l'appettito vien mangiando.
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline Picavbg

  • Senatore Gambero
  • ******
  • Post: 1.620
    • Mostra profilo
Re: Memorizzare commenti dai documenti
« Risposta #16 il: 09 Aprile 2010, 23:34:47 »
Cosa intendi per "procedure di ordinamento"?
Per come ho impostato io il programma ....
No, non c'entra l'impostazione del programma. A volte si può avere la comodità di avere i record di tabella disposti in ordine crescente rispetto al contenuto di una colonna (Es.: $professione). Allora, specialmente se la tabella è sottoposta a continui inserimenti, arrivato ad un certo momento può succedere che la colonna $professione, per rimanere nell'esempio, contenga nei record accodati valori come "lattoniere, ingegnere, sarto, orologiao, ...). Come vedi i record non rispettano più l'ordine alfabetico delle professioni. Allora qualcuno può inventarsi una funzione di utility da selezionare saltuariamente che rimetta ordine in tutti i record della tabella, in modo da ottenere alla fine l'assoluto rispetto dell'ordine alfabetico rispetto alla colonna $professione. Ma la risequenziazione dei record determina anche la rinumerazione dell'id autoincrementale della tabella, per cui se prima il record di tabella con $professione="orologiao" aveva un codice id=168, dopo la risequenziazione potrebbe diventare id=237. Allora, in generale, non è mai consigliabile, in strutture del genere, costruire una chiave di collegamento fra tabelle sul codice id
Spero di essere stato chiaro.
Citazione
Sì, per quanto riguarda stampa e la visualizzazione. Per quanto riguarda il metodo, diciamo che non ho al momento una preferenza.
Diciamo che il metodo che hai indicato, della ListBox o ListView può anche andar bene, ti posso dire in base anche alla tua esperienza e ai tuoi suggerimenti scegliamo la strada meno complicata ma funzionale. Poi sai come è l'appettito vien mangiando.
.
Sono d'accordo. Perciò conviene lasciare tutto bene in vista, anche nella gridview; più avanti, come dici tu, se detto utilizzo ti impegna troppe righe, tanto da appesantire visivamente lo scorrimento  righe, all'interno della gidview, potrai sempre inserire gli oggetti che ti serviranno.

Chiarito il concetto sulla scrittura dei commenti nella gridview (la stampa è semplicemente una conseguenza), non resta che definire la nuova tabella per inserirvi i commenti digitati durante la compilazione della gridview.
Velocemente ti espongo il mio pensiero:
Citazione
Tabella_Commenti
id                        autoincrementale
riftbtest            Riferimento alla tabella_testata  (contiene il campo nrdod e l'anno della dtdoc nel formato (Es. nnnnAA), forse meglio AAnnnn)
riftbriga            Riferimento alla tabella_riga (contiene id_cdart)
nprocomm        N°progressivo di commento relativo allo stesso cod.Articolo
Commento       Stringa contenente il commento digitato

In pratica, dopo avere effettuato l'inserimento dei commenti ed averli trasferiti nella gridview, sotto la riga dell'articolo a cui si riferiscono, nel momento in cui vai a registrare nelle tabelle del DB i dati presenti nella gridview (non so se ciò viene svolto per ogni riga di articolo inserito, oppur dopo avere completato l'inserimento articoli), registri nella tabella_commenti i record relativi alle righe di commento presenti nella gridview, facendo attenzione a riportare anche i campi che costituiranno poi in lettura la chiave di ricerca nella tabella_Commenti, cioè: riftbtest e riftbriga.
Dovrebbe essere chiaro, ma se hai bisogno di ulteriori dettagli, possiamo addentrarci ulteriormente.
Ciao.

P.S.: I nomi chew ho usato nella pseudo struttura della tabella_Commenti sono solo indicativi. È ovvio che li puoi denominare come vuoi tu.

« Ultima modifica: 10 Aprile 2010, 00:00:13 da Picavbg »
:ciao:

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Memorizzare commenti dai documenti
« Risposta #17 il: 10 Aprile 2010, 19:34:36 »
Sei stato chiarissimo, non è il mio caso. Non c'è da programma nessuna possibilità da parte dell'utente di intervenire per ordinare o per esempio ripristinare id cancellati (qualche programma che ho visto lo prevede) sulle tabelle.

Veniamo alla tabella che mi hai suggerito:
nel campo riftbtest devo inserire l'id testata documento?
nel campo riftbriga devo inserire l'id dell'articolo a cui si riferisce il commento? E se il commento non è legato all'articolo (commenti di testata e di chiusura)?
nel campo nprocomm non ho capito cosa devo inserire.

Registro i dati nel DB in un'unico passaggio dopo aver completato l'inserimento in GridView con un ciclo For...Next.
Un'altra cosa, come faccio a scindere le righe commento dalle righe articoli per inserirle nella tabella commenti?
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: Memorizzare commenti dai documenti
« Risposta #18 il: 11 Aprile 2010, 11:50:48 »
Quello che non capisco e che i commenti che tu identifichi come "C" gli chiami articoli, questo a me fa presumere che siano memorizzati da qualche parte o gli associ il codice "C" nel momento dell'inserimento?
Per quanto riguarda i commenti era sottointeso (almeno per come intendo implementarli io) che non devono generare nessun tipo di movimento e non devono essere valorizzati.
Scusa ma non riesco a capire facilmente la tua logica.

La logica è semplice. La descrizione dei documenti io la salvo in una tabella a parte. La tabella contiene un codice identificativo del documento composto da tipodocumento-numero-anno (tipodocumento vale "N" per le note di credito, "F" per le fatture. Quindi N234-2009 vuol dire nota di credito n°234 del 2009). Nella tabella ci sono delle colonne identificate come "codice", "descrizione", "prezzo", "qta", "importo". Ogni record contiente TUTTE le righe di un documento separate da "\n". Basta che faccia uno Split sul valore di ogni cella per avere tutti i codici, tutte le descrizioni ecc....
Visita il mio sito personale: http://www.leonardomiliani.com

Offline Picavbg

  • Senatore Gambero
  • ******
  • Post: 1.620
    • Mostra profilo
Re: Memorizzare commenti dai documenti
« Risposta #19 il: 11 Aprile 2010, 16:13:20 »
Prima di tutto, ti chiedo scusa per il ritardo, ma, purtroppo, dopo avere formulato la risposta, lo stesso giorno in cui hai scritto la tua, casualmente ho pigiato un tasto sbagliato della tasiera e sono entrato in un labirinto dal quale non sono più uscito, fino a perdere il testo già scritto e, peggio ancora, a dimenticare la passw. Sto riprendendo solo ora, ed eccomi pronto a riprendere il nostro percorso.

1):
Citazione
nel campo riftbtest devo inserire l'id testata documento?
Il campo è l'unione di due valori: (d'ora in poi per legare il nome colonna interno ad una delle due tabelle userò il formato Nome_Tabella!Nome_Colonna)
Table_Testata!nrdoc  (di cui non conosco la lunghezza, ma non ha importanza, ci penserai tu)
e
Table_Testata!dtdoc  (di cui interessa solo l'anno nel formato AAAA (meglio di AA)
Per semplicità il campo che avevo pensato può essere scomposto in due campi così dettagliati
RifAnnoTbTestata    (contiene l'anno del campo Table_Testata!dtdoc)
RifNuDocTbTestata   (contiene il valore del campo Table_Testata!nrdoc)

2):
Citazione
nel campo riftbriga devo inserire l'id dell'articolo a cui si riferisce il commento?
il campo va agganciato all'articolo della table_righe e riporta il valore contenuto nel campo Table_Righe!id_cdart

3):
Citazione
nel campo nprocomm non ho capito cosa devo inserire.
Esso è più difficile da capire perchè è nuovo e nasce dal seguente ragionamento: ogni commento, formato da una o più righe, all'interno della colonna "Descrizione" va riferito all'articolo contenuto nella riga immediatamente precedente; perciò, piuttosto che pensare ad un unico campo commento, ho pensato di dividerlo in tanti parti quanto sono le righe che esso impegna nella colonna "Descrizione", in modo da suddividerlo una volta sola e non farlo perciò ogni volta che se ne debba fare uso. Ma se così non interessa perchè non lo dovrai usare più spezzettato, si può lasciare intero. In quest'ultimo caso il campo "nprocomm" che ti ho suggerito non serve più. Per completezza di dico che esso conterrebbe un n° progressivo agganciato alla riga di commento (1, per la prima riga di commento; 2, per la seconda riga di commento: e così via.
Decidi tu se usarlo oppure no. Io lo userei, perchè, così impostato, fa strettanmente riferimento al documento in cui è stato generato, tanto se successivamente lo dovessi usare, riunendolo in un unica riga, dovresti scrivere un'istruzione di unione(Es.: Campo_unione=Commento.1 & Commento.2 & ... &Commento.n), più semplice di quella di scomposizione .

Poi tu dici:
Citazione
E se il commento non è legato all'articolo (commenti di testata e di chiusura)?
Codesta è un'eventualità che non traspariva negli esempi che hai fornito, quindi non l'ho immaginata. Potremmo agganciarli, il primo, ad un ipotetico articolo "testata", mentre il secondo, ad un altrettanto ipotetico articolo "chiusura", ma ci penseremo dopo avere delineato la struttura tabellare per i commenti ... fra le righe.

Spero di essere riuscito a trasmettere il mio pensiero. Se non dovesse essee così, pazienza, vuol dire che mi merito un "----- 0"  :D
Ciao.
:ciao:

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Memorizzare commenti dai documenti
« Risposta #20 il: 11 Aprile 2010, 23:18:08 »
Assolutamente non ti devi scusare, non ci corre dietro nessuno, sono io che ti devo ringraziare per la disponibilità.
Ok, ora il tuo ragionamento mi è più chiaro, anche come strutturare la tabella.

L'unico dubbio che mi è rimasto come ti ho esposto nella risposta precedente, è come fare a distinguere le righe "commento" dalle righe "articolo" quando  devo inserire nel DB i dati, se mi puoi dare qualche dritta.

Comincio a mettere in pratica e fare le prime prove su tutto il ragionamento che abbiamo fatto e ti faccio sapere.
Per quanto riguarda i commenti "testata" e "chiusura" sono d'accordo ci pensiamo successivamnte.
Grazie, ciao

Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline Picavbg

  • Senatore Gambero
  • ******
  • Post: 1.620
    • Mostra profilo
Re: Memorizzare commenti dai documenti
« Risposta #21 il: 12 Aprile 2010, 13:21:07 »
Ok, ora il tuo ragionamento mi è più chiaro, anche come strutturare la tabella.
Benissimo. E allora come pensi di organizzare la tabella commenti? Utilizzerai anche la colonna "nprocomm", per considerare un commento per ciascuna riga della gridview,  oppure hai deciso di creare un commento unico da splittare ogni volta che ti serve, nella gridview e nel documento in  stampa? Mi occorre capire per riprendere il concetto relativamente ai commenti di inizio e fine documento.

Citazione
L'unico dubbio che mi è rimasto come ti ho esposto nella risposta precedente, è come fare a distinguere le righe "commento" dalle righe "articolo" quando  devo inserire nel DB i dati, se mi puoi dare qualche dritta.
Questa volta sono io a non capire la domanda, anche perchè non so cosa usi tu come input di caricamento del DB. Se esso è costituito dalle righe della gridview, mi pare che la tua griglia riporti nelle colonne "Cd. Art." e "Rif. Articolo" valori solo quando viene riempita una riga di tipo "articolo", mentre,  in presenza di commento, per ciascuna riga di tipo "commento", le caselle relative alle suddette colonne ("Cd. Art." e "Rif. Articolo" ) sono vuote. L'impostazione già data va bene e va mantenuta. Ciò ti permetterà, in assenza di valori in dette celle, di collegare ogni riga di commento  all'ultimo "Cd. Art." presente nella griglia. Forse hai un'idea diversa?

Ora vorrei capire una cosa relativamente alle righe di commento di inizio e fine gridview. Immagino che la riga di commento di inizio griglia non sia legata ad alcun articolo, bensì al documento. È vero?
Mentre le righe di commento di chiusura sono quelle riferite all'ultimo articolo immesso nella griglia, oppure dopo l'ultimo articolo immesso e le eventuali rispettive righe di commento, possono essere state inserite altre righe di commento, riferite quindi al Documento?
Ciao.


:ciao:

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Memorizzare commenti dai documenti
« Risposta #22 il: 12 Aprile 2010, 21:59:09 »
Benissimo. E allora come pensi di organizzare la tabella commenti? Utilizzerai anche la colonna "nprocomm", .....
Come vedi dagli orari dei miei post riesco a lavorare al programma praticamente solo la sera, il lavoro in questo periodo mi impegna parecchio, quindi la tabella non la ho ancora impostata, appena pronta la posto così mi dai un parere.
Sì, utilizzerò la colonna "nprocomm" perchè da quello che ho capito dalle tue spiegazioni mi sembra la via più pratica e semplice da realizzare.

Questa volta sono io a non capire la domanda, anche perchè non so cosa usi tu come input di caricamento del DB....
Ti allego uno stralcio del codice che uso per inserire i dati di testata documento e righe documento, così ti fai un'idea del metodo che uso.
Codice: [Seleziona]
PUBLIC SUB itedoc() ' Avviata da BtnSave
  DIM idResult, docResult AS Result

  SELECT CASE $Tpdoc
    CASE "FI" ' Fattura Vendita
' Se i campi 'Data Trasporto' e 'Ora Trasporto' non contengono dati vengono inseriti quelli di compilazione
      IF ValDtTrasp.Value = "" THEN
        ValDtTrasp.Value = Date(Now)
      ENDIF

      IF ValHrTrasp.Value = "" THEN
        ValHrTrasp.Value = Time(Now)
      ENDIF

' Inserisce la testata documento
      docResult = MGlobal.db.Create("tedoc")
      docResult["cdcli"] = iCdcli
      docResult["id_paga"] = iCdtpag
      docResult["tpdoc"] = $Tpdoc
      docResult["nrdoc"] = TxtNrdoc.Text
      docResult["dtdoc"] = ValDtDoc.Value
      docResult["dtrdoc"] = ValDtReg.Value
      docResult["causale"] = CmbCausale.Text
      docResult["imp1"] = TxlTotImp.Text
      docResult["aliva1"] = iPciva
      docResult["iva1"] = TxlTotIva.Text
      docResult["tnepag"] = TxlTotImp.Text
      docResult["totdoc"] = TxlTotDoc.Text
      docResult["consegna"] = CmbTrasporto.Text
      docResult["spedizione"] = TxtPorto.Text
      docResult["cdvet"] = iCdvet
      docResult["dttrasp"] = ValDtTrasp.Value
      docResult["ortrasp"] = ValHrTrasp.Value
      docResult["nrcolli"] = TxtNrColli.Text
      docResult["asbeni"] = CmbAspBeni.Text
      docResult["stelab"] = "D"
      docResult.Update
      MGlobal.db.Commit

' Inserisce una pausa
      WAIT

' Seleziona l'id dell'ultimo inserimento nella tabella tedoc
      idResult = MGlobal.db.Exec("SELECT LAST_INSERT_ID()AS nrdoc2")
      idTedoc = idResult!nrdoc2
      MGlobal.db.Close

' Avvia la routine inserimento righe documenti vendite
      righedocv()
  END SELECT
END

PUBLIC SUB righedocv() ' Avviata da itedoc()
  DIM vResult AS Result
  DIM iRow AS Integer

' Inserimento righe documenti vendita nella tabella ridoc
  FOR iRow = 0 TO (GvwDoc.Rows.Count - 1)
    vResult = MGlobal.db.Create("ridoc")
    vResult["id_tedoc"] = idTedoc
    vResult["tpdoc"] = $Tpdoc
    vResult["dtdoc"] = ValDtDoc.Value
    vResult["cdcli"] = iCdcli
    vResult["id_cdart"] = GvwDoc[iRow, 0].Text
    vResult["qteva"] = GvwDoc[iRow, 4].Text
    vResult["pnven"] = Format((Val(GvwDoc[iRow, 5].Text) * 100) / (100 + Val(GvwDoc[iRow, 7].Text)), "#0.00")
    vResult["valriga"] = Format((Val(GvwDoc[iRow, 6].Text) * 100) / (100 + Val(GvwDoc[iRow, 7].Text)), "#0.00")
    vResult["aliva"] = GvwDoc[iRow, 7].Text
    vResult.Update
    MGlobal.db.Commit
'     MGlobal.db.Close
  NEXT
END

....Se esso è costituito dalle righe della gridview, mi pare che la tua griglia riporti nelle colonne "Cd. Art." e "Rif. Articolo" valori solo quando viene riempita una riga di tipo "articolo", mentre,  in presenza di commento, per ciascuna riga di tipo "commento", le caselle relative alle suddette colonne ("Cd. Art." e "Rif. Articolo" ) sono vuote. L'impostazione già data va bene e va mantenuta. Ciò ti permetterà, in assenza di valori in dette celle, di collegare ogni riga di commento  all'ultimo "Cd. Art." presente nella griglia.....
Hai intuito perfettamente come utilizzo la GridView.

.....Forse hai un'idea diversa?
Assolutamente no, il percorso intrapreso mi sta benissimo.

Ora vorrei capire una cosa relativamente alle righe di commento di inizio e fine gridview. Immagino che la riga di commento di inizio griglia non sia legata ad alcun articolo, bensì al documento. È vero?
Verissimo.

Mentre le righe di commento di chiusura sono quelle riferite all'ultimo articolo immesso nella griglia, oppure dopo l'ultimo articolo immesso e le eventuali rispettive righe di commento, possono essere state inserite altre righe di commento, riferite quindi al Documento?
Giusto.
Quasi quasi non hai più bisogno delle mie spiegazioni, hai capito ciò che voglio ottenere alla perfezione. ;)
Ciao, e grazie ancora.
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline Picavbg

  • Senatore Gambero
  • ******
  • Post: 1.620
    • Mostra profilo
Re: Memorizzare commenti dai documenti
« Risposta #23 il: 13 Aprile 2010, 00:00:48 »
Hai intuito perfettamente come utilizzo la GridView.
Va bene; quindi, assodato che crei i record delle tabelle del Db coi dati contenuti nella gridview, ora resta che io capisca bene la tua risposta all'ultima mia domanda del precedente post:
Citazione
Mentre le righe di commento di chiusura sono quelle riferite all'ultimo articolo immesso nella griglia, oppure dopo l'ultimo articolo immesso e le eventuali rispettive righe di commento, possono essere state inserite altre righe di commento, riferite quindi al Documento?
Giusto.
Quasi quasi non hai più bisogno delle mie spiegazioni, hai capito ciò che voglio ottenere alla perfezione. ;)
Ciao, e grazie ancora.
Infatti non è vero che ho capito, perchè la tua affermazione "Giusto", conferma la prima parte della mia domanda? O, piuttosto conferma la sua seconda parte?
Formulo meglio la domanda:
le righe di commento di chiusura:
1) sono quelle riferite all'ultimo articolo immesso nella griglia?
2) sono state inserite altre righe di commento, dopo l'ultimo articolo con le sue righe di commento, perciò quelle inserite alla fine sono riferite al Documento?
Ciao.




:ciao:

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Memorizzare commenti dai documenti
« Risposta #24 il: 13 Aprile 2010, 00:50:45 »
Formulo meglio la domanda:
le righe di commento di chiusura:
1) sono quelle riferite all'ultimo articolo immesso nella griglia?
2) sono state inserite altre righe di commento, dopo l'ultimo articolo con le sue righe di commento, perciò quelle inserite alla fine sono riferite al Documento?
Ciao.
Scusa ho interpretato male la tua risposta.
I casi che hai esposto (Punto 1 e 2) si possono verificare entrambi nell' uso quotidiano di un gestionale, con questa ultima possibilità  (Punto 2) se si riesce a gestirla abbiamo praticamente toccato tutti i casi in cui i commenti possono essere inseriti in un documento, riassumendo:
1) Commento di testata legato al documento
2) Commento legato all'articolo inserito successivamente all' articolo stesso
3) Commento di chiusura legato al documento, che può essere unico oppure successivo al commento legato all' ultimo articolo in GridView.



« Ultima modifica: 13 Aprile 2010, 00:57:37 da tornu »
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: Memorizzare commenti dai documenti
« Risposta #25 il: 13 Aprile 2010, 15:02:05 »
@tornu:
ma hai letto la mia risp in cima a questa pagina? mi pare che soddisfi bene e semplicemente le tue necessità.
Credi una tabella contenente le righe dei documenti così che poi puoi mettere i commenti in qualunque punto del tuo documento.
Visita il mio sito personale: http://www.leonardomiliani.com

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: Memorizzare commenti dai documenti
« Risposta #26 il: 13 Aprile 2010, 15:07:46 »
Ecco un esempio.
Tralascia che io abbia solo 2 codici articolo (D per Descrizione di una voce con prezzi e C per commenti: in quella versione del gestionale non ho necessità di gestire gli articoli).
Visita il mio sito personale: http://www.leonardomiliani.com

Offline Picavbg

  • Senatore Gambero
  • ******
  • Post: 1.620
    • Mostra profilo
Re: Memorizzare commenti dai documenti
« Risposta #27 il: 13 Aprile 2010, 15:12:06 »
abbiamo praticamente toccato tutti i casi in cui i commenti possono essere inseriti in un documento, riassumendo:
1) Commento di testata legato al documento
2) Commento legato all'articolo inserito successivamente all' articolo stesso
3) Commento di chiusura legato al documento, che può essere unico oppure successivo al commento legato all' ultimo articolo in GridView
Bene. Un'ultima cosa: i tuoi codici articolo (Table_Righe!id_cdart), in base al contenuto che leggo negli esempi da te forniti, dovrebbero contenere valori alfanumerici. Quindi si potrebbe pensare, per i commenti di testata e di chiusura a campi, sempre di 9 crt (caratteri),  che iniziano con valori convenzionali fuori dalla standard di codifica degli articoli:
Citazione
Es.:
A000A0001 - per la 1^ riga di commento di testata)
A000A0002 - per la 2^ riga di commento di testata)
..................
A000A9999 - per la 9999^ riga di commento di testata)   
e
Z000Z0001 - per la 1^ riga di commento di chiusura)
..................
Z000Z9999 - per la 9999^ riga di commento di chiusura)
Fammi sapere.  :D
Ciao.
:ciao:

Offline tornu

  • Gran Maestro dei Gamberi
  • *****
  • Post: 855
    • Mostra profilo
Re: Memorizzare commenti dai documenti
« Risposta #28 il: 13 Aprile 2010, 21:27:03 »
@tornu:
ma hai letto la mia risp in cima a questa pagina? mi pare che soddisfi bene e semplicemente le tue necessità.
Credi una tabella contenente le righe dei documenti così che poi puoi mettere i commenti in qualunque punto del tuo documento.
Si, leo ho letto le tue risposte (le leggo sempre, ci mancherebbe, non posso ignorarti  :)), non è che non ho preso in considerazione i tuoi suggerimenti, coinvolto dalla discussione con Picavbg non ti ho risposto per "distrazione".
Comunque mi sembra che stiamo andando praticamente verso una soluzione che se non ho (per l'ennesima volta) capito male è la stessa che hai adottato tu.
Intervieni quando vuoi con suggerimenti o critiche, saranno sempre bene accette dal sottoscritto, tutto serve per apprendere e migliorarsi.

@Picavbg:
Bene. Un'ultima cosa: i tuoi codici articolo (Table_Righe!id_cdart), in base al contenuto che leggo negli esempi da te forniti, dovrebbero contenere valori alfanumerici.....
No, ai interpretato male, oppure con tutte le immagini che ho allegato ti ho portato fuori strada.
Se torni indietro di qualche risposta troverai due allegati dove ho detto che sono il form e il documento stampato originali che uso realmente, gli allegati delle altre risposte ignorali, mi servivano per darti l'dea pratica.

Se guardi il form ho spiegato con delle didascalie i campi principali e vedrai che la colonna "Cd. Art." è popolata dal DB con i dati del campo id_cdart che è "integer auto_increment", mentre il campo "Rif. Articolo" è un campo varchar popolato con i codici reali degli articoli. Spero di essere stato chiaro, altrimenti chiedi pure.
ciao
Il software è come il sesso, è meglio quando è libero. (Linus Torvalds)

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: Memorizzare commenti dai documenti
« Risposta #29 il: 13 Aprile 2010, 21:31:23 »
Mi pare che stiate facendo la cosa un po' troppo complicata. Come ti ho suggerito io non devi stare a guardare se il commento è all'inizio delle descrizioni, a metà, se legato alla riga precedente ecc... Lo metti dove e quando ti pare, tanto poi salvi le descrizioni in una tabella a parte per cui hai lì tutte le righe ordinate del documento.

Con questo sistema puoi anche fare documenti da 100 pagine, non ti devi preoccupare di quante righe stai mettendo nel DB. Ci penserà il codice a dividerle su più pagine quando riapri il documento in lettura e/o in stampa.
Visita il mio sito personale: http://www.leonardomiliani.com