devcode-it / openstamanager

Il software gestionale open source per l'assistenza tecnica e la fatturazione
https://www.openstamanager.com
GNU General Public License v3.0
108 stars 68 forks source link

Conteggiare gli articoli in automezzi nell'inventario ? #613

Closed beppe9000 closed 5 years ago

beppe9000 commented 5 years ago

È presente qualche impostazione per fare ciò? In alternativa da dove si può intervenire nel codice?

loviuz commented 5 years ago

negli ultimi commit, gli automezzi sono diventati sedi e c'è un plugin "Giacenze" nell'articolo, per vedere su quali automezzi è presente. Mancherebbe una visualizzazione degli articoli per automezzo (ormai sede). Dove posizioneresti la lista?

beppe9000 commented 5 years ago

Interessante! Io avevo iniziato convertire gli automezzi in magazzini e per questo chiedevo...

Nello specifico mi riferivo al fatto che aggiungendo articoli ad un automezzo, nella lista della pagina Articoli al quantitativo totale venga sottratta la parte caricata nell'automezzo.

Riguardo le visualizzazioni per sede (è già prevista una release? che caratteristiche hanno in più le sedi?) potrebbe avere senso mettere quelle visualizzazioni come tab della pagina Articoli in modo da centralizzare il tutto...

Invece per quanto concerne aggiornamenti e retrocompatibilità nel backend cambierà anche il nome della tabella/altro ?

loviuz commented 5 years ago

E' previsto nello script di aggiornamento che gli articoli degli automezzi vengano spostati nelle sedi, e vengano quindi create tante sedi quanti sono gli automezzi, prendendo come nome sede il nome dell'automezzo, così da non perdere i dati già inseriti.

Visivamente, nella scheda articolo c'è un plugin chiamato "Giacenze", dove vedere per ogni sede quanti articoli sono presenti. Per gestire ciò, sono state sdoppiate le sedi in ddt e fatture, chiamandole "Sede partenza" e "Sede destinazione", ed è stata aggiunta la sede di partenza anche nelle attività per scegliere da quale magazzino scaricare gli articoli.

A livello pratico, il campo "qta" di mg_articoli rimane sempre aggiornato con le quantità totali disponibili, mentre su mg_movimenti ci sono 2 campi che indicano la sede a cui imputare il movimento e la sede controparte (sarebbe l'"altra" sede). Erano campi ricavabili da dt_ddt e co_documenti, ma essendo dei moduli speculari non era immediato a livello di query estrarre le giacenze per sede, per cui sono stati creati 2 nuovi campi anche in mg_movimenti.

Infine, nella gestione utenti, oltre a selezionare l'anagrafica a cui collegarli, è stata aggiunta una selezione multipla delle sedi che possono gestire, per cui se la propria azienda ha più magazzini (sedi), posso associare un utente solo ad uno o più magazzini, che saranno gli unici magazzini che potrà specificare come sedi di partenza (o arrivo) merci.

Nel plugin gianceze ciò che vedi è questo:

image

beppe9000 commented 5 years ago

Dovrò fare attenzione in fase di aggiornamento perchè dovrò cambiare diverse cose...

Nel mio caso io sono andato a ridefinire alcuni comportamenti:

Con l'aggiornamento mg_articoli.qta continuerà a contenere il numero di articoli totali meno quelli spostati nelle sedi? Il 'magazzino principale' rimane un magazzino oppure verranno utilizzate esclusivamente le sedi per contenere gli articoli ?

Non ho capito questo: mg_articoli_automezzi diventa mg_articoli_sedi o viene convertito tutto in righe di mg_movimenti da cui poi ricavare i totali ?

loviuz commented 5 years ago

ho aggiunto una interfaccia modal per movimentare articoli tra automezzi: una volta inviato il modulo sul server faccio un controllo che ci siano le quantità e replico il codice usato per le operazioni di carico e scarico degli automezzi per spostare le quantità desiderate.

Con le modifiche sul repository allo stato attuale, la movimentazione di articoli da un magazzino ad un altro avviene tramite ddt o fatture accompagnatorie, per cui puoi scegliere la sede di partenza e destinazione. Di solito, per spostare merci, serve sempre un ddt per legge, a meno che non siano adiacenti o piccoli oggetti.

Con l'aggiornamento mg_articoli.qta continuerà a contenere il numero di articoli totali meno quelli spostati nelle sedi?

No: mg_articoli.qta conterrà sempre il totale articoli di tutte le sedi. Si potrà estrarre comunque la quantità di articoli per sede tramite query su mg_movimenti

Il 'magazzino principale' rimane un magazzino oppure verranno utilizzate esclusivamente le sedi per contenere gli articoli?

Per ora rimane Sede legale, ma visti i problemi che sta causando avendo un id fisso a 0 e non essendo su database, diventerà anche quello un record presente di default su ogni anagrafica con un proprio record su _ansedi.

Non ho capito questo: mg_articoli_automezzi diventa mg_articoli_sedi o viene convertito tutto in righe di mg_movimenti da cui poi ricavare i totali?

mg_articoli_automezzi non esisterà più, e l'id delle sedi movimentate saranno presenti sia nei documenti (quindi dt_ddt, co_documenti, in_interventi) sia nei movimenti (mg_movimenti).