110 messaggi dal 04 settembre 2010
Buongiorno,
ho sviluppato un gestionale in ASP.NET 4.0 di un azienda di abbigliamento che gestisce un grosso magazzino logistico di oltre 1.000.000 di articoli, che a seguito di ordini che arrivano da portali di altre aziende (scaricando gli ordini in formato excel) vengono importati in una gridview e poi salvati nel database.
I portali esterni non sono legati al database del gestionale, l'azienda che gestisce il gestionale ha la necessità di bloccare o correggere il quantitativo richiesto di alcuni articoli in base ad alcuni principi di qualche articolo che fondamentalmente sono uguali ma prodotti da ditte diverse sono composti:

Cod. Art. 101.0 GIUBBINO NERO MOD. SPORT TG.52
Cod. Art. 102.1 GIUBBINO NERO MOD. SPORT TG.52
Cod. Art. 103.0 CAPPUCCIO PER GIUBBINO NERO MOD. SPORT

Se un cliente (che non sa come sono composte le confezioni) seleziona l'articolo 102.1 e l'articolo 103.0 (l'articolo 102.1 comprende già il cappuccio) in fase di caricamento dell'ordine dovrebbe inserire nella gridview in corrispondenza dell'articolo con codice 103.0 in una colonna dedicata un CODICE (esempio D) e nella colonna quantità Richiesta modificare la quantità a 0 (zero) perchè il cappuccio è già compreso nel codice 102.1.

Altro problema:
Se per gli stessi articoli magari viene richiesto solo l'art. 101.0 nell'ordine in automatico si dovrebbe caricare anche il Cod.Art. 103.0 con lo stesso quantitativo del cod.Art. 101.0.

Nel caso :
Il quantitativo del cod.Art. 101.0 è superiore al quantitativo richiesto per il Cod.Art. 103.0 quest'ultimo si deve aggiornare la quantità uguale al Cod.Art. 101.0.

Io avrei pensato di creare una tabella dove inserisco gli articoli che presentano questo tipo di problematiche, ma non so come fare poi a gestire i problemi che vi ho esposto sopra.

Spero in un fattivo aiuto

Grazie

Esempio:
311 messaggi dal 08 gennaio 2011
Ciao,
in passato, per un gestionale utilizzato in un bar, dato che era prevista la vendita di cocktails ma anche di cestini natalizi e come è ovvio sia i cocktail che i cestini sono composti da altri articoli, ho risolto dando a tutti gli articoli la possibilità di essere definiti come articoli composti.

Per far ciò ho utilizzato due classi e due tabelle DB corrispondenti.

Per avere un idea :

 internal class ArticoloComponente
    {
        int IdArticoloComponente { get; set; }
        int IdArticoloComposto { get; set; }
        int QuantitàUtilizzataNelComposto { get; set; }
    }


    internal class Articolo
    {
        int idArticolo { get; set; }
        string CodiceArticolo { get; set; }
        string DenominazioneArticolo { get; set; }
        string UnitàDiMisura { get; set; }
        int Rimanenza { get; set; }
        List<ArticoloComponente> ArticoliComponenti { get; set; }
    }


Se la proprietà ArticoliComponenti è vuota l'articolo è un articolo semplice altrimenti è composto.

Secondo me se parti con una simile strutturazione dei dati puoi risolvere i problemi che hai esposto.

Ciao.
110 messaggi dal 04 settembre 2010
Intanto grazie per la risposta, per quanto riguarda le tabelle le ho create anche io, l&#8217;unica cosa è che non ho previsto le due classi ma ho gestito la procedura con un DataSet che in fase di caricamento legge le 2 tabelle e aggiunge un codice agli articoli che devono essere trattati come fratelli per intenderci.
L&#8217;unica cosa che non riesco e fare è l&#8217;aggiornamento delle quantità ma il codice viene assegnato in maniera corretta.
Vedendo il tuo esempio come gestisci le classi?
Grazie mille
311 messaggi dal 08 gennaio 2011
Ciao,
le classi le doterei dei metodi carica e salva in cui implementerei il codice di recupero e salvataggio dati sul db.

L'importante è tenere presente il concetto di articolo composto; cioè di un articolo che può avere altri articoli che lo compongono.


Permettimi di osservare, tuttavia, che se tu non hai previsto l'uso di classi per definire gli oggetti del tuo gestionale, presto potresti trovarti in situazioni cotiche.

Ciao.
110 messaggi dal 04 settembre 2010
Grazie mille seguirò il tuo consiglio implementerò con le classi

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.