Creazione ordine da preventivo

Creazione ordine da preventivo

0
0

Buonasera, lavoro presso un’etichettificio ed ho creato un piccolo gestionale per preventivi, ordini e commesse di lavoro. Mi sono bloccato al punto di creare l’ordine da preventivo. In pratica ho creato un formato con all’interno la tabella preventivi che contiene i dati cliente e i subtotali e una tabella “Dati Preventivi” come portale per inserire in dettaglio gli articoli del preventivo con descrizione, prezzo unitario, ecc. La stessa cosa ho fatto per il portale ordini dove ho la tabella ordini con idati principali: cliente, n.ordine,ecc e la tabella dettaglio articoli come portale per inserire gli articoli ordinati. A questo punto nel formato preventivi ho creato un pulsante con script seguente:

$var_idclienti valore chiave primaria tabella clienti

$var_articolo: valore descrizione articolo da portale dati preventivi

vai al formato ordini

nuovo record richiesta

imposta campo cliente con la var_idclienti

imposta campo descrizione articolo portale dettaglio articoli con la var $var_articolo

Il problema e penso sia anche normale, che mi imposta soltanto la prima riga del portale. E’ possibile riportare tutte le righe del portale dati preventivi sul portale dettaglio articoli del formato ordini?

Grazie

 

Segnalato come spam
Pubblicata da (Domande: 2, Risposte: 6)
Domanda inviata 26 Marzo 2021 16:41
99 vis.
0
Domanda privata

Buongiorno Giulio,

ragionando sullo script da te consigliato sono riuscito a risolvere il problema e a generare l'ordine da preventivo. Allego lo script per conoscenza , in modo da renedrlo utile anche per altri utenti con quesiti simili.

Ho creato un'ulteriore tabella "conferma da preventivo" in modo da poter andare ad eliminare gli articoli presenti sul preventivo ma non ordnati dal cliente e generare la conferma d'ordine da inviare o stampare.

Alla chiusura ho impostato un trigger che mi vuota la tabella "conferma da preventivo".

L'unica cosa che no capisco è per quale motivo quando mi vuota la tabella "conferma da preventivo" non vedo più gli articoli nel portale "dettaglio ordine articoli" nel formato "ordini". Se però apro direttamente la tabella "dettaglio ordine articoli" sono presenti!

Ho tolto anche la spunta da elimina record correlati... Non saprei.

Comunque ci lavorerò sopra. Vi aggiorno 

Grazie dell'aiuto!

Buon lavoro

 

Segnalata come spam
Pubblicata da (Domande: 2, Risposte: 6)
Risposta inviata 20 Aprile 2021 09:17
0
Domanda privata

Ci provo, sembrava più semplice! 

Segnalata come spam
Pubblicata da (Domande: 2, Risposte: 6)
Risposta inviata 30 Marzo 2021 12:53
0
Domanda privata

Buongiorno, Vittorio,

diciamo che hai tralasciato alcuni elementi nel riportare il mio esempio :D

il mio esempio fa questo:
1 - prende i dati da preventivo
2 - crea un nuovo ordine e ci riporta i dati 
3 - prende l'id dell'ordine
4 - ritorna al preventivo originale
5 - va alle singole righe
6 - prende ogni singola riga e crea una corrispondente riga ordine (utilizzando la chiave ricavata al punto 3)
7 - mostra l'ordine creato.

il tuo esempio invece:
 1- crea l'ordine
 2- prende i dati dalla prima riga

:)

 

.g.

Segnalata come spam
Pubblicata da (Domande: 0, Risposte: 1544)
Risposta inviata 30 Marzo 2021 09:44
0
Domanda privata

Buongiorno Giulio,

ho provato ad inserire lo script da te consigliato... sperando di averlo compilato bene (vedere allegato). Ho provato anche a modificarlo ma purtoppo mi crea l'ordine ma nel portale "dettaglio articoli" mi inserisce soltanto la prima riga del portale "dati preventivi". 

Per completezza ti elenco le relazioni, non vorrei ci sia qualcosa di errato qui:

chiave primaria tabella preventivi con chiave esterna tabella dati preventivi

chiave primaria tabella ordini con chiave esterna tabella conferma ordine

chiave primaria tabella dettaglio articoli con chiave esterna tabella conferma ordine

Attendp tuo riscontro

Saluti V.

P.S. versione utilizzata: Filemaker 18 Pro Advanced

Segnalata come spam
Pubblicata da (Domande: 2, Risposte: 6)
Risposta inviata 30 Marzo 2021 01:35
0
Domanda privata

Buongiorno Giulio

grazie per la risposta. Provo con questa soluzione e ti faccio sapere.

Segnalata come spam
Pubblicata da (Domande: 2, Risposte: 6)
Risposta inviata 29 Marzo 2021 16:43
0
Domanda privata

Buongiorno, Vittorio.

puoi farlo tranquillamente, con un loop. qualcosa come:

imposta variabile[$idp; preventivi::id]
imposta variabile[$idcl; clienti::id]

imposta variabile[$xx; ultimodatochetiserve]
imposta variabile[$dp;Dati preventivi::campochiaveprimaria]

vai al formato[commesse]
nuovo record
imposta campo[commesse::id_preventivo; $idp]
imposta campo[commesse::id_cliente; $idcl]

imposta campo[commesse::ultimocampo; $xx]

if[not evuoto($dp)] // ci sono dati nel preventivo
imposta variabile[$idc; commesse::id] //ti serve per legare le righe commessa create

vai al formato[preventivi]
vai a record correlati [Dati preventivi; formato dati preventivi]

if[get(ultimoerrore)]
vai al formato[commesse]
esci dallo script
end if

vai a record[primo]
loop

imposta variabile[$descrizione; dati preventivi::descrizione]

imposta variabile[$xx; ultimodatochetiserve]

vai al formato[commesse_righe]
nuovo record
imposta campo[commesse_righe::id_commessa; $idc]
imposta campo[commesse_righe::descrizione; $descrizione]

imposta campo[commesse_righe::ultimocampo; $xx]
vai al formato[Dati preventivo]
vai a record[successivo, esci dopo l'ultimo: attivato]
end loop

vai al formato[commesse]

 

questo ovviamente è la base, poi ci sono molte possibilità (come legare una riga commessa alla corrispondente riga preventivo, etc.).

 

facci sapere!

.g.

Segnalata come spam
Pubblicata da (Domande: 0, Risposte: 1544)
Risposta inviata 29 Marzo 2021 12:48