Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Funzione per il calcolo ricorsivo di un prezzo
martedì 02 maggio 2006 - 13.15
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
ricky
Profilo
| Junior Member
179
messaggi | Data Invio:
mar 2 mag 2006 - 13:15
Ciao, qualcuno potrebbe darmi uno spunto per la strutturazione di una funzione che determini il costo di un prodotto in base a questa logica:
tabella articoli con
ID - Codice - Descrizione - Prezzo - Tipologia (A: acquistato, P: prodotto) - IDFigli
per definizione i prodotti che non hanno figli sono acquistati (in quando non sono composti da altri prodotti)
i prodotti con figli sono generati da un lavoro di produzione (quindi prodotti internamente)
io vorrei che dato un ID alla funzione, calcoli il costo totale, sommando i prezzi di tutti i componenti... in questo modo
se il componente è prodotto acquistato (A), viene recuperato il prezzo
se il componente è un prodotto lavorato (P) devo sommare i prezzi dei figli ... procedendo ricorsivamente se l'elemento ha, a sua volta, altri figli (e alla fine devo sommare solo le foglie)
quindi se il prodotto
Macchina Fiat è composta da:
Volante (A) ... acquistato
Ruote (A) ... acquistato
Sedile (P) ... prodotto
.... il Sedile è composto da
.... Tessuto (A)
.... Plastica (A)
per determinare il costo della Macchina FIAT, dovrei sommare Volante + Ruote + Tessuto + Plastica, procedendo ricorsivamente; se per ipotesi plastica avesse avuto altri componenti, non avrei sommato Plastica, ma gli elementi che ne facevano parte!
Scusate il post lungo ma è un po' complicato da spiegare e, per me, da implementare
... in questo modo, se la mia logica non è sbagliata, dovrei riuscire a determinare il costo totale di un prodotto
Grazie a tutti per l'aiuto... e scusate per il post particolarmente lungo!!!
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
mar 2 mag 2006 - 13:36
Insomma, se ho ben capito, tu vuoi fare il calcolo costi della distinta base.
In pseudocodice:
- si parte dal livello più alto con quantità (ti consiglio 1000) di prodotto finito
- si realizza un metodo ricorsivo a che crea una struttura di dati (es tabella di appoggio) che arriva ai materiali di base.
- Per ogni elemento della tabella si memorizza la sua quantità di utilizzo, il codice, e il suo prezzo e il livello.
- si realizza una funzione ricorsiva che prende in input il codice del padre e restituisce il valore dei figli (ricondotti ciascuno secondo la quantità di contribuzione di ciascun elemento)
Se poi devi tenere conto anche delle fasi e dei materiali utilizzati nelle fasi la vedo un pò dura e complessa.
ricky
Profilo
| Junior Member
179
messaggi | Data Invio:
mar 2 mag 2006 - 16:27
Grazie mille, quindi dovrei, partendo da un ID, verificare se è A o P, se è P ha sicuramente dei componenti, che possono, a loro, volta essere componenti.
Non capisco come creare la funzione ricorsiva che arriva fino all'elemento finale...
, verificando che siano A o P
Grazie 1k
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
mar 2 mag 2006 - 17:45
Su questo mio articolo trovi un esempio di funzione ricorsiva di estrazione dati di distinta base.
http://community.visual-basic.it/lucianob/archive/2006/04/25/17107.aspx
Non nego che sia abbastanza complesso come codice ma, dopo averci fatto il callo (due o tre anni) vedrai che ti sembrerà uno scherzo
.
ricky
Profilo
| Junior Member
179
messaggi | Data Invio:
mar 2 mag 2006 - 18:36
Il effetti il tuo articolo l'avevo già guardato in seguito ad una tua risposta sul forum per la strutturazione gerarchica.... nel mio caso la situazione "mi sembra" differente... io devo, praticamente, recuperare le foglie di un ID
Riscrivendomi su carta un esempio, mi sembra di aver capito che recuperando le foglie di ogni ID, basterebbe recuperare il prezzo ... dato che si tratta sicuramente di TUTTI prodotti acquistati... ora detto così "sembra" OK, ma trasformarlo in una funziona ricorsiva è un po' piu complicato per me
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
mar 2 mag 2006 - 18:45
Putroppo non ho tempo e non ho una soluzione di calcolo costi da distinta base su .NET (per me è work in progress sull'erp che sto costruendo) ma con altri linguaggi ti assicuro che ho già realizzato questa cosa e installata presso aziende che la usano da anni.
ricky
Profilo
| Junior Member
179
messaggi | Data Invio:
mar 2 mag 2006 - 21:20
Non pretendo il codice
... ma in pseudo linguaggio, come dovrebbe essere la funzione???
Grazie ancora
ricky
Profilo
| Junior Member
179
messaggi | Data Invio:
mer 3 mag 2006 - 20:08
Nessun suggerimento
Cteniza
Profilo
| Guru
1.509
messaggi | Data Invio:
mer 3 mag 2006 - 23:50
Sei capitato in un momento in cui non ho tempo distrazioni dal lavoro e per qualche giorno non ti posso aiutare, magari lo potrà fare sicuramente qualche altro.
ricky
Profilo
| Junior Member
179
messaggi | Data Invio:
gio 4 mag 2006 - 00:06
Figurati!!! mi hai già dato qualche prezioso spunto.
Sono io che sono inchiodato
Torna su
Stanze Forum
Elenco Threads
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 !