Creazione fatture

di Nox__ il
52 risposte

52 Risposte - Pagina 3

  • 23/11/2022 - Nox__ ha scritto:


    Come posso fare?

    Lo wizard crea quello che vuoi fare. Puoi usarlo come esempio per studiare il codice.

    Per vedere uno dei metodi che si possono usare, fai una maschera di prova.

    Apri creazion   guidata maschera.

    Seleziona due tabelle con relazione una a molti, scegli i campi, poi s egli l opzione maschere separate.

    Fatta la maschera vai a vedere il codice vba nell  maschere.

  • 23/11/2022 - fratac ha scritto:


    23/11/2022 - Nox__ ha scritto:


    Come posso fare?

    Lo wizard crea quello che vuoi fare. Puoi usarlo come esempio per studiare il codice.

    Per vedere uno dei metodi che si possono usare, fai una maschera di prova.

    Apri creazion   guidata maschera.

    Seleziona due tabelle con relazione una a molti, scegli i campi, poi s egli l opzione maschere separate.

    Fatta la maschera vai a vedere il codice vba nell  maschere.

    Come sempre grazie fratac.

    Era Semplicissimo bastava aggiungere un setfocus.

    Un'ultima cosa e poi non ti rompo più: dovrei copiare un valore da una casella di testo (testo15) che si trova nella sottomaschera (Prodotti Fatturati) nella maschera principale (Fattura) ma non riesco. Ho provato a dare come valore di origine ( =Maschere!Prodotti Fatturati!Testo15) ma non funziona; ho impostato un codice vba ( Me!Testo16 = [Maschere]![Prodotti Fatturati]![Testo15]) ma mi dice “impossibile trovare la maschera Prodotti Fatturati”; la maschera esiste e ho controllato bene il nome.

    Come faccio?

  • 26/11/2022 - Nox__ ha scritto:


    Un'ultima cosa e poi non ti rompo più: dovrei copiare un valore da una casella di testo (testo15) che si trova nella sottomaschera (Prodotti Fatturati) nella maschera principale (Fattura) ma non riesco. Ho provato a dare come valore di origine ( =Maschere!Prodotti Fatturati!Testo15) ma non funziona; ho impostato un codice vba ( Me!Testo16 = [Maschere]![Prodotti Fatturati]![Testo15]) ma mi dice “impossibile trovare la maschera Prodotti Fatturati”; la maschera esiste e ho controllato bene il nome.

    Come faccio?

    Dare una risposta certa è difficile, perchè potrebbe derivare da vari fattori.

    tipo:

    nome errato delle maschere, nome errato dei controlli, errore nella scrittura della riga, apertura della sottomaschera in modalità tabella e non a maschere continue.

    intanto controlla questi elementi.

  • 26/11/2022 - fratac ha scritto:


    26/11/2022 - Nox__ ha scritto:


    Un'ultima cosa e poi non ti rompo più: dovrei copiare un valore da una casella di testo (testo15) che si trova nella sottomaschera (Prodotti Fatturati) nella maschera principale (Fattura) ma non riesco. Ho provato a dare come valore di origine ( =Maschere!Prodotti Fatturati!Testo15) ma non funziona; ho impostato un codice vba ( Me!Testo16 = [Maschere]![Prodotti Fatturati]![Testo15]) ma mi dice “impossibile trovare la maschera Prodotti Fatturati”; la maschera esiste e ho controllato bene il nome.

    Come faccio?

    Dare una risposta certa è difficile, perchè potrebbe derivare da vari fattori.

    tipo:

    nome errato delle maschere, nome errato dei controlli, errore nella scrittura della riga, apertura della sottomaschera in modalità tabella e non a maschere continue.

    intanto controlla questi elementi.

    Li ho controllati tutti t sono giusti. Forse il motivo è che la mia sottomaschera si trova nel pie di pagina della maschera principale.

    Può essere questo il motivo? Si può risolvere?

  • 27/11/2022 - Nox__ ha scritto:


    Li ho controllati tutti t sono giusti. Forse il motivo è che la mia sottomaschera si trova nel pie di pagina della maschera principale.

    Può essere questo il motivo? Si può risolvere?

    Se si trova nel piè di pagina è già tanto che riesci a visualizzarla ed usarla.

    Si può risolvere? Il problema è che mantenendo la sottomoschera nel piè di maschera, poi avrai ulteriori problemi.

    Dipende da come hai strutturato le maschere. Al momento non mi viene in mente niente, se non spostare la sottomaschera nel  corpo.

    Puoi inviare una immagine della maschera?
    Magari si riesce meglio a capire come creare una maschera più ordinata ed organica, senza dover per forza trovare soluzioni create da una impaginazione non ottimale.

  • 27/11/2022 - fratac ha scritto:


    27/11/2022 - Nox__ ha scritto:


    Li ho controllati tutti t sono giusti. Forse il motivo è che la mia sottomaschera si trova nel pie di pagina della maschera principale.

    Può essere questo il motivo? Si può risolvere?

    Se si trova nel piè di pagina è già tanto che riesci a visualizzarla ed usarla.

    Si può risolvere? Il problema è che mantenendo la sottomoschera nel piè di maschera, poi avrai ulteriori problemi.

    Dipende da come hai strutturato le maschere. Al momento non mi viene in mente niente, se non spostare la sottomaschera nel  corpo.

    Puoi inviare una immagine della maschera?
    Magari si riesce meglio a capire come creare una maschera più ordinata ed organica, senza dover per forza trovare soluzioni create da una impaginazione non ottimale.

    Ecco le immagini.

    Penso comunque che si possa spostare la sottomaschera dal piè di pagina, non ci dovrebbero essere problemi.

  • Ma quante volte usi la stessa maschera inserita in una sottomaschera?

    In questa maschera c'è qualcosa che non mi quadra.

    In teoria tutto nel corpo maschera dovresti avere solo i dati della fattura e nella sottomaschera gli articoli che ne fanno parte.

  • 28/11/2022 - fratac ha scritto:


    Ma quante volte usi la stessa maschera inserita in una sottomaschera?

    In questa maschera c'è qualcosa che non mi quadra.

    In teoria tutto nel corpo maschera dovresti avere solo i dati della fattura e nella sottomaschera gli articoli che ne fanno parte.

    Non è la stessa maschera. Sono una maschera  e una query di riepilogo. la maschera serve per poi sapere le quantità acquistate da ogni cliente. Comunque ho inserito l'ultima maschera nel corpo ma non riesco comunque a prelevare i dati che mi servono (Importo totale), mi dice impossibile trovare la maschera “Fatturati”. Ho provato anche a cambiare nome ma nulla. Cosa può essere?

  • 28/11/2022 - Nox__ ha scritto:


    28/11/2022 - fratac ha scritto:


    Ma quante volte usi la stessa maschera inserita in una sottomaschera?

    In questa maschera c'è qualcosa che non mi quadra.

    In teoria tutto nel corpo maschera dovresti avere solo i dati della fattura e nella sottomaschera gli articoli che ne fanno parte.

    Non è la stessa maschera. Sono una maschera  e una query di riepilogo. la maschera serve per poi sapere le quantità acquistate da ogni cliente. Comunque ho inserito l'ultima maschera nel corpo ma non riesco comunque a prelevare i dati che mi servono (Importo totale), mi dice impossibile trovare la maschera “Fatturati”. Ho provato anche a cambiare nome ma nulla. Cosa può essere?

    Ma se è una maschera per creare una nuova fattura, perchè hai una query di riepilogo? Al massimo ci dovrebbe essere un raggruppamento nella sottomaschera articoli basata sui prezzi degli articoli, così da generare un totale.

  • 28/11/2022 - fratac ha scritto:


    28/11/2022 - Nox__ ha scritto:


    28/11/2022 - fratac ha scritto:


    Ma quante volte usi la stessa maschera inserita in una sottomaschera?

    In questa maschera c'è qualcosa che non mi quadra.

    In teoria tutto nel corpo maschera dovresti avere solo i dati della fattura e nella sottomaschera gli articoli che ne fanno parte.

    Non è la stessa maschera. Sono una maschera  e una query di riepilogo. la maschera serve per poi sapere le quantità acquistate da ogni cliente. Comunque ho inserito l'ultima maschera nel corpo ma non riesco comunque a prelevare i dati che mi servono (Importo totale), mi dice impossibile trovare la maschera “Fatturati”. Ho provato anche a cambiare nome ma nulla. Cosa può essere?

    Ma se è una maschera per creare una nuova fattura, perchè hai una query di riepilogo? Al massimo ci dovrebbe essere un raggruppamento nella sottomaschera articoli basata sui prezzi degli articoli, così da generare un totale.

    Ciao, si infatti ho seguito il tuo consiglio e ora ho solo la sottomaschera derivante dalla query ho eliminato l'altra.

    Sono Riuscito a risolvere anche il problema “impossibile trovare maschera……”, bastava inserire “me![sottomaschera……….”.

    Ora ricontrollo e ti aggiorno

  • 30/11/2022 - Nox__ ha scritto:


    28/11/2022 - fratac ha scritto:


    28/11/2022 - Nox__ ha scritto:


    28/11/2022 - fratac ha scritto:


    Ma quante volte usi la stessa maschera inserita in una sottomaschera?

    In questa maschera c'è qualcosa che non mi quadra.

    In teoria tutto nel corpo maschera dovresti avere solo i dati della fattura e nella sottomaschera gli articoli che ne fanno parte.

    Non è la stessa maschera. Sono una maschera  e una query di riepilogo. la maschera serve per poi sapere le quantità acquistate da ogni cliente. Comunque ho inserito l'ultima maschera nel corpo ma non riesco comunque a prelevare i dati che mi servono (Importo totale), mi dice impossibile trovare la maschera “Fatturati”. Ho provato anche a cambiare nome ma nulla. Cosa può essere?

    Ma se è una maschera per creare una nuova fattura, perchè hai una query di riepilogo? Al massimo ci dovrebbe essere un raggruppamento nella sottomaschera articoli basata sui prezzi degli articoli, così da generare un totale.

    Ciao, si infatti ho seguito il tuo consiglio e ora ho solo la sottomaschera derivante dalla query ho eliminato l'altra.

    Sono Riuscito a risolvere anche il problema “impossibile trovare maschera……”, bastava inserire “me![sottomaschera……….”.

    Ora ricontrollo e ti aggiorno

    Si infatti funziona in tutto, ma c'è un modo per scorrere con le freccette della tastiera la casella combinata e tramite vba restituire a una cella vuota (nulla) il valore 0?

  • 30/11/2022 - Nox__ ha scritto:


    Si infatti funziona in tutto, ma c'è un modo per scorrere con le freccette della tastiera la casella combinata e tramite vba restituire a una cella vuota (nulla) il valore 0?

    Oddio, ora mi cogli impreparato. In teoria una volta che hai attivato la combo dovrebbero funzionare anche le frecce. Sono così abituato ad usare mouse o digitare il testo parziale e poi usare invio che non ricordo. Forse il modo c è, ma non so se il gioco vale la candela.

    Per quanto riguarda il valore vuoto, se è dovuto ad un campo null o vuoto, non è cosa buona. Dipende poi da dove prendi i valori.

    Se è una tabella di servizio, che funge da fonte dati per popolare la combobox, inserisci il valore mancante o cancella il record.

    Se invece proviene da una tabella di archiviazione, per prima cosa cerca di capire perché hai il valore nullo e risolvi il problema a monte. È sempre meglio evitare campi nulli, anche se molte volte è inevitabile.

    Comunque ci sono varie alternative. 

    Tra le due che mi vengono in mente è che nella query di origine dati, metti il criterio <>"" oppure usi la funzione NZ. Se fai una ricerca con google trovi molti articoli che la descrivono bene.

    Però se sostituisci il campo vuoto con lo 0 rischi che poi la query non funzioni a dovere quando viene selezionato lo 0 .

    A meno che non ti serva proprio lo spazio per azzerare la combo o lo 0 per altre esigenze.

    Altro probkema cche potresti avere è la duplicazione delle voci nella combo.

    In quel caso puoi costruire la query con il select distinct.

    Però avere come origini dati un campo di una tabella di archiviazione, almeno per me, non è mai la via ottimale.

  • 01/12/2022 - fratac ha scritto:


    30/11/2022 - Nox__ ha scritto:


    Si infatti funziona in tutto, ma c'è un modo per scorrere con le freccette della tastiera la casella combinata e tramite vba restituire a una cella vuota (nulla) il valore 0?

    Oddio, ora mi cogli impreparato. In teoria una volta che hai attivato la combo dovrebbero funzionare anche le frecce. Sono così abituato ad usare mouse o digitare il testo parziale e poi usare invio che non ricordo. Forse il modo c è, ma non so se il gioco vale la candela.

    Per quanto riguarda il valore vuoto, se è dovuto ad un campo null o vuoto, non è cosa buona. Dipende poi da dove prendi i valori.

    Se è una tabella di servizio, che funge da fonte dati per popolare la combobox, inserisci il valore mancante o cancella il record.

    Se invece proviene da una tabella di archiviazione, per prima cosa cerca di capire perché hai il valore nullo e risolvi il problema a monte. È sempre meglio evitare campi nulli, anche se molte volte è inevitabile.

    Comunque ci sono varie alternative. 

    Tra le due che mi vengono in mente è che nella query di origine dati, metti il criterio <>"" oppure usi la funzione NZ. Se fai una ricerca con google trovi molti articoli che la descrivono bene.

    Però se sostituisci il campo vuoto con lo 0 rischi che poi la query non funzioni a dovere quando viene selezionato lo 0 .

    A meno che non ti serva proprio lo spazio per azzerare la combo o lo 0 per altre esigenze.

    Altro probkema cche potresti avere è la duplicazione delle voci nella combo.

    In quel caso puoi costruire la query con il select distinct.

    Però avere come origini dati un campo di una tabella di archiviazione, almeno per me, non è mai la via ottimale.

    Per le freccette ho risolto con la routine “ me.nomecombo.dropdown” ogni volta che con tab vado in quel record mi si apre il menu a tendina inizio a scrivere e se è troppo lungo seleziono con le freccette.

    Per lo 0 invece a me serve perché prendo dati da altre maschere per riportarli e quindi penso che la soluzione del criterio <>"" sia quella giusta. 

    Ti ringrazio di tutto sei stato gentilissimo.

    Alla prossima

  • Mi è sorto un errore:

    in estratto con un pulsante apro la relativa maschera di creazione fattura, ma non funziona (mi apre sempre l'ultima maschera di quel cliente e non quella specificata).

    al pulsante ho applicato una macro apri maschera con condizione WHERE     ="[IdFattura]=" & [IdFattura]

    Perchè non funziona?

  • 05/12/2022 - Nox__ ha scritto:


    condizione WHERE     ="[IdFattura]=" & [IdFattura]

    Non è semplice dire perché non funziona.

    Una regola base è quella di non chiamare i campi  allo stesso modo  in tabelle diverse, per evitare che il programmatore si confonda o che l interprete vb faccia di testa sua.

    Prova a scrivere il percorso esplicito, tipo tabella.campo o maschera.campo.

    Fare il debug con le macro non è semplice.

Devi accedere o registrarti per scrivere nel forum
52 risposte