Creare una tabella "a ritroso" - funzione LISTA

FileMaker è un database relazionale. Vediamo come...

Moderatore: Moderatori

Rispondi
ziaale
Messaggi: 18
Iscritto il: domenica 24 dicembre 2006, 1:00

Creare una tabella "a ritroso" - funzione LISTA

Messaggio da ziaale » martedì 16 gennaio 2007, 22:03

Ciao a tutti!
Devo creare una nuova tabella A che prenda 1 volta sola i valori che sono presenti n volte nella tabella B.
Nello specifico ho una lista di fatture ma non esiste l'anagrafica clienti.
Quindi devo crearla diciamo "a ritroso".
Ho provato a fare un campo calcolato con la funzione LISTA, ma non succede niente, credo di saltare un passaggio....
ciao e grazie
Alessia
____________________________
FileMaker 8.5 Windows XP sp2

stregatto
Messaggi: 9700
Iscritto il: lunedì 1 dicembre 2003, 1:00
Località: Roma
Contatta:

Messaggio da stregatto » martedì 16 gennaio 2007, 22:25

ordina per id cliente
esporta record raggruppati
importa in nuovatabella (magari creandola)

.g.

ziaale
Messaggi: 18
Iscritto il: domenica 24 dicembre 2006, 1:00

Messaggio da ziaale » martedì 16 gennaio 2007, 23:23

Aspetta, sono un po' bollita...
E' uno script?
Oppure una procedura da effetuarsi 1 volta poi basta?

Perchè in realtà potrà capitare di dover ripetere la procedura anche in futuro. che casinooooooooooooooooooo
8O
Alessia
____________________________
FileMaker 8.5 Windows XP sp2

raybaudi
Messaggi: 3616
Iscritto il: sabato 7 febbraio 2004, 1:00
Località: Roma
Contatta:

Re: Creare una tabella "a ritroso" - funzione LIST

Messaggio da raybaudi » martedì 16 gennaio 2007, 23:51

ziaale ha scritto:Ciao a tutti!
Devo creare una nuova tabella A che prenda 1 volta sola i valori che sono presenti n volte nella tabella B.
Nello specifico ho una lista di fatture ma non esiste l'anagrafica clienti.
Quindi devo crearla diciamo "a ritroso".
Ho provato a fare un campo calcolato con la funzione LISTA, ma non succede niente, credo di saltare un passaggio....
ciao e grazie
Ciao

ti rispondo qui, piuttosto che nell'altro tuo post, per dirti che la funzione Lista() NON c'entra niente con la funzione: ElementiListaValori.

La prima è una funzione molto nuova; è stata introdotta nella versione 8.5 ma non è applicabile alla tua situazione.

Creare una lista valori con i valori provenienti da un campo, in questo caso dal campo x della tua tabella B, potrebbe servire...
ma a dire la verità NON ho capito benissimo...
questo campo x sarebbe l'acquirente ?
o la sua partita iva ?

oppure proprio non ho capito niente ?
Raybaudi FMP 12 Adv. Windows XP SP3

ziaale
Messaggi: 18
Iscritto il: domenica 24 dicembre 2006, 1:00

Messaggio da ziaale » mercoledì 17 gennaio 2007, 0:10

Ciao, figurati, a volte non capisco nemmeno io da sola... :lol:

Allora in realtà ho 2 situazioni analoghe:

1. ho un db di fatture già emesse con campi vari RAGIONE SOCIALE, P.IVA, INDIRIZZO, NUMERO FATTURA, DATA, DESCRIZIONE ECC
Non esiste però la relativa anagrafica clienti, cioè ogni volta a manina inserivano tutto 8O 8O 8O
Quindi il mio compito è creare una lista di tutti i già clienti (che abbiano avuto almeno 1 fattura) che poi verrà integrata con i nuovi clienti, e da essa verranno generate le nuove fatture. Quindi è un'operazione one shot e basta.

2. l'altra è un filo più complicata.
In realtà io ricevo ogni mese un tabulato di tutto l'inserito pubblicitario con campi (te la faccio breve):
NOME INSERZIONISTA
PAGINE PUBBLICATE
MESE DI PUBBLICAZIONE
IMPORTO
ECC..

Devo fare la stessa cosa di cui sopra, ossia creare una tabella B con i NOMI INSERZIONISTI e aggiungerci altre info.

Il mese dopo però arriva il nuovo file che va aggiunto alla tabella A. Ora chiaramente troverò nuovi inserzionisti, e inserzionisti che già erano presenti.

Quindi in teoria l'ottimale sarebbe che in automatico il sistema riconoscesse gli inserzionisti nuovi (non presenti nella tabella B) e li aggiungesse.

Grazie dell'attenzione :D
Alessia
____________________________
FileMaker 8.5 Windows XP sp2

raybaudi
Messaggi: 3616
Iscritto il: sabato 7 febbraio 2004, 1:00
Località: Roma
Contatta:

Messaggio da raybaudi » mercoledì 17 gennaio 2007, 1:32

Ho finalmente capito...

Devi creare un'anagrafica clienti popolandola con i dati provenienti da un archivio di fatture.

Quindi si tratta di esportare i dati, diciamo così in modo "particolare"...
in pratica come detto da Stregatto, usando uno script.

Ma prima dobbiamo fare una considerazione: non essendoci un archivio clienti, è molto improbabile che invece esista nella fattura un codice cliente.
Se c'è useremo quello come campo riassunto ( poi ti dirò ), ma se non c'è
quale campo ci assicura una certa UNICITA' ?

Io propenderei per il codice fiscale/partita iva.

Lo script è.

Mostra tutti i record
Ordina i record ( per il campo di cui sopra )
Esporta record [ ti verrà richiesto di dare un nome al file, i campi da esportare e, cosa più interessante, il campo di riassunto che sarà quello scelto da noi con i criteri sopradetti e che garantirà l'unicità del singolo codice o partita iva]

( la famosa esportazione per dati raggruppati )

Dal file di testo ottenuto creerai l'archivio clienti.

Per il punto 2, la cosa è più facile; dopo la prima importazione potrai creare uno script che si incaricherà di effettuare tulle le altre successive importazioni, flaggando:
1) Aggiorna i record che corrispondono ai record selezionati
2) Aggiungi i dati rimanenti come nuovi record
3) ( il più importante ) confronta record in base a questo campo, che non è un flag, ma un simbolo di = che dovrai posizionare su un campo
Raybaudi FMP 12 Adv. Windows XP SP3

ziaale
Messaggi: 18
Iscritto il: domenica 24 dicembre 2006, 1:00

Messaggio da ziaale » mercoledì 17 gennaio 2007, 13:02

Benissimo, la prima parte l'ho fatta, ma ho un dubbio:
quando esporto in realtà vado a creare un file esterno al mio db. E' corretto? quindi poi dal mio DB importo la tabella così creata?
Alessia
____________________________
FileMaker 8.5 Windows XP sp2

raybaudi
Messaggi: 3616
Iscritto il: sabato 7 febbraio 2004, 1:00
Località: Roma
Contatta:

Messaggio da raybaudi » mercoledì 17 gennaio 2007, 16:08

Sì, è corretto.

Il file di testo così creato può anche essere aperto direttamente da FileMaker, che creerà un nuovo DB...

ma in questo caso penso sia più opportuno importarlo nella nuova tabella che avrai creato
Raybaudi FMP 12 Adv. Windows XP SP3

Rispondi