CALCOLI TRA DATE

di il
17 risposte

17 Risposte - Pagina 2

  • Re: CALCOLI TRA DATE

    beasissi ha scritto:


    Grazie muttley
    Allora io ho un campo di controllo GIORNI_TRASCORSI, poi ho un campo DATA_FATTURA, un campo DATA_INCASSO ed un campo SITUAZIONE

    Io vorrei che quando nel campo GIORNI_TRASCORSI, rispetto alla data fattura inserita si superano i 60 giorni nel campo SITUAZIONE deve venir scritto "SCADUTA" , a patto però che nel campo DATA_INCASSO non ci sia nessuna data.
    Nel momento però che inserirò una data, sia questa superiore od inferiore ai 60 giorni, nel campo SITUAZIONE deve venirci " PAGATA"

    E' complicato specie se rapportato al campo DATA_INCASSO
    Per non avere fraintendimenti (usando i termini tecnici corretti):
    per campo si intende campo in tabella
    per controllo si intende un oggetto (text, list, combo, ...) che si usa in un form/report.
    poi i controlli possono essere associati o meno
    quando dici "un campo di controllo" nn capisco cosa tu stia intendendo ...

    in tabella avrai i campi relativi alla fattura, quelli per intenderci che si inputano da apposite form
    in fase di presentazione (form o report non sposta molto) avrai dei controlli di norma associati alla tabella relativa, ok?
    questi controlli avranno come origine dati i campi presenti in tabella. In aggiunta avrai anche controlli (oggetti se preferisci) tipo quelli che vuoi mettere tu ma saranno calcolati e non riportati in tabella, al limite in una query.

    Ci sono cose non chiare nella tua situazione:
    1) sei sicuro di voler vedere i giorni trascorsi (indipendentemente da quali date usare) o ti basta il "PAGATA" piuttosto che "da pagare" o "scaduta da ... giorni" ??
    2) dove vuoi presentare questi dati? form singola? form continua? report?

    comunque la metti (attendo tue delucidazioni in merito) non c'è nulla di complicato, quello che vuoi fare è piuttosto semplice quindi non ti preoccupare che ci si arriva ... ma devi essere più chiaro/a/u
  • Re: CALCOLI TRA DATE

    Ti ringrazio tantissimo Muttley ma comincio ad essere fuso..... è venerdi e la testa mi fuma.

    Per campo intendo campo in tabella ( che poi ritrovo nella maschera );
    Per campo di controllo intendo una casella di testo dove c'è una semplice operazione di calcolo dei giorni trascorsi dalla data di fatturazione alla data in cui faccio la verifica ( Date() ); quando verifico una certa fattura, in quel campo escono i giorni trascorsi.
    Quel dato posso anche non visualizzarlo sulla maschera della fattura ma se supera i 60 giorni e la fattura non è ancora stata pagata ( per cui il campo [DATAINCASSO] è vuoto, nel campo [ SITUAZIONE] mi deve comparire " SCADUTA".

    Nel caso, invece, che fatto il conteggio ( a prescindere che siano piu o meno di 60 giorni ) la fattura sia stata incassata allora deve compari "PAGATA"

    Per oggi basta.
    Piu di cosi non so proprio come spiegarlo
  • Re: CALCOLI TRA DATE

    beasissi ha scritto:


    ...
    Piu di cosi non so proprio come spiegarlo
    puoi anche non sapere come spiegarlo ma ti assicuro che ho capito cosa vuoi fare da innumerevoli post ma tu continui a non rispondere alle domande e ripeti le stesse cose usando termini personali.
    Facciamo così, considero che sia una maschera singola "FormFattura" e di avere il controllo "Situazione" ... provo a spiegarti.
    metodo 1)
    crea una function nel modulo della FormFattura e chiamala "CalcolaSituazione".
    nel suo interno prova a stilare le condizioni che ti interessano ... ti do una traccia perchè la pappa pronta non è nelle intenzioni del forum soprattutto se si è quasi a digiuno di conoscenza di vba:
    
    se non c'è la data di scadenza allora me.situazione=null ed esci
    se non c'è la data di incasso allora
    	se la data odierna è > della data di scadenza 
    		allora me.situazione = "Scaduta da " & date()-me.data_scadenza & " giorni"
    		altrimenti me.situazione = "da pagare entro il " & me.data_scadenza
    	end
    altrimenti me.situazione = "incassata il " & me.data_incasso
    end
    
    questa la richiami all'apertura e al afterUpdate di ogni controllo/campo che è oggetto di interesse della stessa funzione

    metodo 2)
    metti nell'origine dati una formula di calcolo tipo fatta + o meno alla stessa maniera ma modificando un pò la sintassi (tipo gli if diventano iif, usa i ; per dividere i "rami" then ed else, etc)

    prova a creare un tuo codice e postarlo ... visto che ti è stato chiesto + volte e non ne ho ancora visto traccia


    EDIT: il "codice" nel modo 1 è volutamente scritto in quel modo perchè mi sembra + didattico
Devi accedere o registrarti per scrivere nel forum
17 risposte