Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    query update impossibile

    Salve a tutti,
    ho due tabelle mysql così composte:
    tabella 1: fatture
    tabella 1 campi: cf,fattura,impfatt,imppag
    tabella 2: pagamenti
    tabella 2 campi: cf, totalepagamento
    sulla tabella fatture vengono caricate le fatture emesse. Sulla tabella pagamenti vengono caricati i pagamenti ricevuti dalla banca che riportano il cf e l'importo ma non i numeri delle singole fatture che vengono pagate.
    Quello che sto cercando di fare, purtroppo senza riuscirci, è di riportare nel campo imppag quello che viene pagato per ogni fattura. In pratica se il cliente A paga 100 ed ha 4 fatture di 50, 30, 50 e 30 dovrei aggiornare i campi imppag con i valori 50, 30, 20 e 0 (iniziando dalla fattura più vecchia).
    Sto quasi per arrendermi .... o è possibile farlo?
    Grazie

  2. #2
    ma come fai a dire che l'importo pagato sia relativo a quelle fatture e non ad altro o ad altre fatture? insomma, mi pare un pò una pecionata come idea... ma quando si inseriscono i pagamenti non puoi far selezionare a mano le fatture dell'utente così magari chi inserisce si legge la causale del bonifico e sceglie la fattura pagata?

    cmq con una query non puoi farlo, probabilmente con una store procedure/function di mysql da scriverti te, altrimenti fai lo script in php che prende le fatture in ordine di emissione asc, l'importo pagato, e con un ciclo scali l'importo della fattura dal pagamento e setti la relativa fattura pagata... domanda:

    io ho due fatture (in ordine di data) di 50 e 30 euro

    situazione A:

    il cliente paga 30 euro... come fai a dire che è stata pagata la fattura più recente e non l'acconto di quella più vecchia?

    situazione B:

    il cliente paga 20 euro... che si fà?
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  3. #3
    sono d'accordo con te che non è un abbinamento dei pagamenti perfetto ma così è stato deciso dai titolari della ditta che preferiscono un abbinamento che a volte potrebbe essere aprossimativo (ma comunque sempre sul cf coretto) piuttosto che far perdere ore di lavoro a una persona per fare il lavoro manuale (che la banca indichi tutte le fatture non se ne parla!)

  4. #4
    A questo recuperi i totali delle fatture ordinate dalla più vecchia alla più nuova, parti dal primo totale che sottrai al totale pagato e spunti la fattura come pagata.
    Passi alla fattura successiva, fai la stessa cosa fino a quando le sottrazioni non portano a zero il totale pagato (o meno di zero).
    Se la differenza del totale fattura che stai verificando e il rimanente del totale pagato non copre totalmente il totale della fattura stessa, ti salvi la differenza in un campo dello stesso record che chiamerai es. residuo, campo che controlli al primo giro di sottrazioni.

    E' un po' macchinoso, lo so, per niente facile da scrivere, ma se vogliono così...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.