Problema dare ed avere

martedì 25 giugno 2013 - 12.41
Tag Elenco Tags  VB.NET  |  .NET 3.5  |  Windows 7  |  Visual Studio Express  |  SQL Server 2008 R2

pieroalampi Profilo | Expert

salve mi serrve una mano perché io o per stanchezza o per incapacità questa volta non arrivo, ho una tabella chiamata TB_Contabile
in questa ho dare ed avere ogni ingresso in dare è reg. con una id contabile univoco che associa l'operazione ad una partita di merce adesso il problema nasce quando ci sono gli anticipi e cioe il cliente porta della merce da lavorare e quindi vanno in dare per un totale di 50€ ma mi lascia un anticipio che andranno in avere magati di 60€ oppure 30€ e poi altre 30€ (che potrebbero servire per operazioni future) l'anticipo viene scritto in una riga diversa e non è collegato ad un id contabile sempre uguale e cioe -1000, il mio problema è il seguente come faccio a far scaricare e quindi scalare gli importi in modo corretto e cioe 50 le doveva ce ne sono rimasti 60 e 60-50 =10 e quindi come faccio ad aggiornare le due righe ??? una andrebbe cancellata e l'altra andrebbe a 10???
grazie mille
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LA PRIMA FRASE DI UN PROGRAMMATORE HELLO WORD ...... ANCHE L'ULTIMA

CorriCorrado Profilo | Junior Member

Piero, il tuo post non semplice da capire. Per favore dacci i campi delle tabelle e qualche esempio.

Grazie

Corrado

renarig Profilo | Expert

Si si capisce poco, pero qualcosina si capisce

>ho una tabella chiamata TB_Contabile....
> ...il problema nasce quando ci sono gli anticipi
>e cioe il cliente porta della merce da lavorare
Mi sa che nella tua tabella TB_Contabile registri i lavori e hai un solo campo per i pagamenti


> l'anticipo viene scritto in una riga diversa e non è
> collegato ad un id contabile sempre uguale e cioe -1000,
Quindi il problema lo hai "intuito"

A parer mio hai bisogno di 2 tabelle

TB_Lavori
- con una Key
- e tutti gli altri campi
- NON servono i pagamenti

TB_Contabile
- con una Key
- con una Key esterna che fa riferimento alla Key di TB_Lavori
- con un campo dove puoi registrare gli acconti ( o il saldo )
- eccetera

.




pieroalampi Profilo | Expert

no la tab lavori c'è già ora mi spiego meglio:

questa è la tab contabile che ovviamente è collegata con quella cosi detta lavori :

idContabilità- idContabile- id cliente- R_Dare- R_Avere R_caursare - R_Data R_RifCommessa
2 -1000 1 0,0000 74,0000 25/06/2013 12:29:37 *
3 -1000 1 0,0000 10,0000 25/06/2013 12:29:42 *
4 1 1 74,0000 0,00000 25/06/2013 12:29:42 R1

Allora da premettere che il programma è alla fine ma è meglio riepilogare:
quando inserisco una commessa o partita come la vogliamo chiamare il programma registra in dare (esempio id 4) la commessa, ovviamente quando la merce lavorata esce la elimina, e fin qui non ho problemi.
Il problema nasce quando il cliente che mi porta la merce mi da 1 o più anticipi in denaro che io ovviamente li registro in avere (id 2 e 3) questi anticipi non sono ovviamente collegati a nessuna commessa perché dato che lui anticipa dei soldi li può anticipare per questa commessa oppure anche per le future commesse, quindi li ho registrati con id contabile -1000 quindi so che i -1000 sono tutti anticipi del cliente, adesso il problema nasce appena scarico la merce e devo scalare dagli anticipi fino all'eliminazione della riga gli importi, esempio:
come in tabella, il cliente mi porta la merce da lavorare e io la registro mettendo in dare 74€ ma allo stesso modo in due tempi diversi mi da due anticipi uno di 74€ e uno di 10€ quindi di conseguenza quando andro a dare la merce lavorata al cliente questo avrà ancora un credito di 10 € come faccio a scalare dalle due righe gli importi ed eliminare le righe? e se invece di 74 +10 di anticipo avessi 96-12 sarebbe la stessa cosa? cioe da ogni riga devo scalare quello che mi serve scalare e cancellare le righe a 0.
grazie ragazzi spero di essere stato chiaro
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LA PRIMA FRASE DI UN PROGRAMMATORE HELLO WORD ...... ANCHE L'ULTIMA

CorriCorrado Profilo | Junior Member

Ciao Piero,
perdonami ma per me è un problema contabile. Il tuo -1000 è la cassa, e questa deve essere collegata alla scheda Cliente (idCliente); quindi, in base alle movimentazione monetaria movimenterai la cassa, sapendo in questo modo che il cliente 1 ha un saldo positivo (credito) o negativo (debito). Ottieni il risultato semplicemente con una query della scheda contabile.
Come per la cassa, accade per i beni: tu hai la merce, che registri come tipo 1 in idContabile. La merce conferita in lavorazione viene registrata come lavorazioni conto terzi, e scaricato al momento della riconsegna al cliente. La fattura emessa al cliente per la lavorazione andrà a stornare l'anticipo dato e movimentare i conti di utile (inclusi i conti IVA).

Se stai sviluppando un gestionale non devi mai cancellare record, altrimenti chi fa la riconciliazione di bilancio, o chi effettua controlli non potrà più capire cosa è successo nei vari periodi.

spero di essere stato chiaro.
Corrado

pieroalampi Profilo | Expert

ok !! ma guarda che il problema non è quello, so che la tab esposta cosi non è chiarissima ma l'anticipo è collegato al cliente e io vedo perfettamente la situazione del cliente per il resto mi serve solo riuscire a sommare il totale dell'avere per poi sottrare la differenza con dare e lasciare la rimanenza in avere!
di fatto se tu hai in dare 78€ e poi su dieci righe separate in avere hai 10 € come fai ad eliminarle fino a 78€ e lasciare le differenze??? la mia domanda è questa.
grazie e scusate ma... non ci arrivo
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LA PRIMA FRASE DI UN PROGRAMMATORE HELLO WORD ...... ANCHE L'ULTIMA

CorriCorrado Profilo | Junior Member

Forse non posso aiutarti, io sono fisso su questa idea:


375x228 12Kb

Corrado

pieroalampi Profilo | Expert

quindi secondo te un operazione che calcola la somma delle colonne e che elimina solo quelle già sottratte non si può fare?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LA PRIMA FRASE DI UN PROGRAMMATORE HELLO WORD ...... ANCHE L'ULTIMA

CorriCorrado Profilo | Junior Member

si può fare tutto, ma se procedi in quella direzione perdi la tracciabilità delle operazioni fatte, ossia quando sono stati dati gli anticipi e quando la merce è stata consegnata. Il libro magazzino ti serve anche per l'inventario.
Corrado

pieroalampi Profilo | Expert

ma la tracciabilità non mi interessa non è un programma di fatturazione
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LA PRIMA FRASE DI UN PROGRAMMATORE HELLO WORD ...... ANCHE L'ULTIMA
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5