Si mi scuso mi sono lasciato prendere. Visto che ho avuto risposte.
Ora mi hai dato un assunto.
La versione di Access che sto usando (2016) ammette max 32 indici. E rispetto alle vecchie versioni nel collegamento delle tabelle si ferma quando il limite viene superato.
Visto che nel collegamento delle tabelle l'interfaccia “a volte” mi chiede di definire uno o più campi come chiave primaria la soluzione del problema sarebbe eseguire il collegamento in altro modo.
Da “ignorante” riuscendo a trovare il codice del comando di collegamento lo si potrebbe modificarlo sospendendo le righe che creano gli indici in automatico. E utilizzare le righe di quando va in palla e chiede all'utente di definire le chiavi primarie manualmente.
Dal Navigator di AS l'unica cosa che sono riuscito a fare è il create table. Sempre da “ignorante” non mi sembra di vedere la definizione degli indici.
Non so se può esser utile
In ogni caso il titolo del thread si può modificare:
Collegare tabella tramite ODBC in presenza di errore Troppi Indici
Essendo nuovo ti chiedo se è opportuno chiudere questo thread e riaprirlo in altro modo.
Grazie per la tua pazienza
-- Generazione SQL
-- Versione: V6R1M0 080215
-- Generata su: 23/09/23 15:44:14
-- Database relazionale: WINTAL
-- Opzioni standard: DB2 for i
CREATE TABLE SVIBAPWIT.MOMAG00F (
-- SQL150B 10 REUSEDLT(*NO) nella tabella MOMAG00F in SVIBAPWIT ignorata.
TRM01 CHAR(3) CCSID 280 NOT NULL DEFAULT '' ,
ATM01 CHAR(1) CCSID 280 NOT NULL DEFAULT '' ,
NRM01 DECIMAL(9, 0) NOT NULL DEFAULT 0 ,
-- SQL150D 10 EDTCDE nella colonna NRM01 ignorato.
NOMUS CHAR(10) CCSID 280 NOT NULL DEFAULT '' ,
NRSES CHAR(6) CCSID 280 NOT NULL DEFAULT '' ,
NRMOV DECIMAL(5, 0) NOT NULL DEFAULT 0 ,
-- SQL150D 10 EDTCDE nella colonna NRMOV ignorato.
TPCAU CHAR(1) CCSID 280 NOT NULL DEFAULT '' ,
CDCAU CHAR(2) CCSID 280 NOT NULL DEFAULT '' ,
CAUAZ CHAR(8) CCSID 280 NOT NULL DEFAULT '' ,
CDPAR CHAR(15) CCSID 280 NOT NULL DEFAULT '' ,
CDMAG CHAR(2) CCSID 280 NOT NULL DEFAULT '' ,
DEPAR CHAR(30) CCSID 280 NOT NULL DEFAULT '' ,
CDDET CHAR(6) CCSID 280 NOT NULL DEFAULT '' ,
CDCLI CHAR(6) CCSID 280 NOT NULL DEFAULT '' ,
CDCOM CHAR(6) CCSID 280 NOT NULL DEFAULT '' ,
CDFOR CHAR(6) CCSID 280 NOT NULL DEFAULT '' ,
COMMM CHAR(25) CCSID 280 NOT NULL DEFAULT '' ,
CDECM CHAR(3) CCSID 280 NOT NULL DEFAULT '' ,
DAMOV DECIMAL(8, 0) NOT NULL DEFAULT 0 ,
-- SQL150D 10 EDTCDE nella colonna DAMOV ignorato.
QTMOV DECIMAL(11, 2) NOT NULL DEFAULT 0 ,
-- SQL150D 10 EDTCDE nella colonna QTMOV ignorato.
QTFAT DECIMAL(11, 2) NOT NULL DEFAULT 0 ,
-- SQL150D 10 EDTCDE nella colonna QTFAT ignorato.
DESIS DECIMAL(11, 2) NOT NULL DEFAULT 0 ,
-- SQL150D 10 EDTCDE nella colonna DESIS ignorato.
UNMIS CHAR(2) CCSID 280 NOT NULL DEFAULT '' ,
MVALS DECIMAL(13, 2) NOT NULL DEFAULT 0 ,
-- SQL150D 10 EDTCDE nella colonna MVALS ignorato.
MVALE DECIMAL(13, 2) NOT NULL DEFAULT 0 ,
-- SQL150D 10 EDTCDE nella colonna MVALE ignorato.
TPORD CHAR(1) CCSID 280 NOT NULL DEFAULT '' ,
CDORD CHAR(6) CCSID 280 NOT NULL DEFAULT '' ,
NRLOT DECIMAL(2, 0) NOT NULL DEFAULT 0 ,
-- SQL150D 10 EDTCDE nella colonna NRLOT ignorato.
TIRIG CHAR(2) CCSID 280 NOT NULL DEFAULT '' ,
SEQLG CHAR(4) CCSID 280 NOT NULL DEFAULT '' ,
RIFFO CHAR(8) CCSID 280 NOT NULL DEFAULT '' ,
NUFAT DECIMAL(6, 0) NOT NULL DEFAULT 0 ,
-- SQL150D 10 EDTCDE nella colonna NUFAT ignorato.
DAFAT DECIMAL(8, 0) NOT NULL DEFAULT 0 ,
-- SQL150D 10 EDTCDE nella colonna DAFAT ignorato.
NRBOL DECIMAL(6, 0) NOT NULL DEFAULT 0 ,
FLCF2 CHAR(1) CCSID 280 NOT NULL DEFAULT '' ,
FLCF3 CHAR(1) CCSID 280 NOT NULL DEFAULT '' ,
C$REP CHAR(2) CCSID 280 NOT NULL DEFAULT '' ,
C$CEN CHAR(2) CCSID 280 NOT NULL DEFAULT '' ,
C$CAA DECIMAL(4, 0) NOT NULL DEFAULT 0 ,
C$CBB CHAR(2) CCSID 280 NOT NULL DEFAULT '' ,
C$IND CHAR(2) CCSID 280 NOT NULL DEFAULT '' ,
C$INT CHAR(2) CCSID 280 NOT NULL DEFAULT '' ,
C$KF1 CHAR(1) CCSID 280 NOT NULL DEFAULT '' ,
MDUBI CHAR(5) CCSID 280 NOT NULL DEFAULT '' ,
TCOCT CHAR(1) CCSID 280 NOT NULL DEFAULT '' ,
MARIQ CHAR(6) CCSID 280 NOT NULL DEFAULT '' ,
CDPOR CHAR(15) CCSID 280 NOT NULL DEFAULT '' ,
MARI2 CHAR(10) CCSID 280 NOT NULL DEFAULT '' ,
MARI3 CHAR(10) CCSID 280 NOT NULL DEFAULT '' ,
MARI4 CHAR(1) CCSID 280 NOT NULL DEFAULT '' ,
NRMOL CHAR(6) CCSID 280 NOT NULL DEFAULT '' ,
DAIMO$ DECIMAL(8, 0) NOT NULL DEFAULT 0 ,
ORIMO$ DECIMAL(6, 0) NOT NULL DEFAULT 0 )
RCDFMT MOMAG ;
LABEL ON TABLE SVIBAPWIT.MOMAG00F
IS 'FILE MOVIMENTI DI MAGAZZINO -MA' ;
LABEL ON COLUMN SVIBAPWIT.MOMAG00F
( TRM01 IS 'Tipo' ,
ATM01 IS 'Ann' ,
NRM01 IS 'Nr.az.' ,
NOMUS IS 'Nome utente' ,
NRSES IS 'Nr' ,
NRMOV IS 'Nr' ,
TPCAU IS 'Tp' ,
CDCAU IS 'Caus' ,
CAUAZ IS 'Azioni' ,
CDPAR IS 'Cod. parte' ,
CDMAG IS 'Mag' ,
DEPAR IS 'Descrizione' ,
CDDET IS 'Deposito' ,
CDCLI IS 'Codcli' ,
CDCOM IS 'Cod.' ,
CDFOR IS 'Fornit.' ,
COMMM IS 'Commento' ,
CDECM IS 'Ecc.' ,
DAMOV IS 'Dat.mov' ,
QTMOV IS 'Q.mov.' ,
QTFAT IS 'Quant.' ,
DESIS IS 'Esistenza' ,
UNMIS IS 'Um' ,
MVALS IS 'Valore' ,
MVALE IS 'Valore' ,
TPORD IS 'Tp' ,
CDORD IS 'Cod.' ,
NRLOT IS 'Nr' ,
TIRIG IS 'Mov' ,
SEQLG IS 'Seq.' ,
RIFFO IS 'Rifer.' ,
NUFAT IS 'Num.fatt.' ,
DAFAT IS 'D.fatt.' ,
NRBOL IS 'Numero' ,
C$REP IS '$CREP' ,
C$CEN IS '$CCEN' ,
C$CAA IS '$CCAA' ,
C$CBB IS '$CCBB' ,
C$IND IS '$CCOS' ,
C$INT IS '$CCOS' ,
MDUBI IS 'UBICAZIONE' ,
TCOCT IS 'Tco' ,
MARIQ IS 'var.di mag.' ,
CDPOR IS 'Cod. parte' ,
MARI2 IS 'var.di mag.' ,
MARI3 IS 'var.di mag.' ,
MARI4 IS 'var.di mag.' ,
NRMOL IS 'Nr' ) ;
LABEL ON COLUMN SVIBAPWIT.MOMAG00F
( TRM01 TEXT IS 'Tipo record' ,
ATM01 TEXT IS 'Attività/annullamento record' ,
NRM01 TEXT IS 'Numero azione di aggiornamento' ,
NOMUS TEXT IS 'Nome utente' ,
NRSES TEXT IS 'Numero di sessione' ,
NRMOV TEXT IS 'Numero movimento' ,
TPCAU TEXT IS 'Tipo causale' ,
CDCAU TEXT IS 'Codice causale movimento di magazzino' ,
CAUAZ TEXT IS 'Azioni della causale' ,
CDPAR TEXT IS 'Codice parte' ,
CDMAG TEXT IS 'Codice magazzino' ,
DEPAR TEXT IS 'Descrizione parte' ,
CDDET TEXT IS 'Codice deposito esterno' ,
CDCLI TEXT IS 'Codice cliente' ,
CDCOM TEXT IS 'Codice commessa' ,
CDFOR TEXT IS 'Codice fornitore' ,
COMMM TEXT IS 'Commento sul movimento' ,
CDECM TEXT IS 'Codice di eccezione sul mov. di magazzino' ,
DAMOV TEXT IS 'Data movimento' ,
QTMOV TEXT IS 'Quantità movimento' ,
QTFAT TEXT IS 'Quantità fatturata' ,
DESIS TEXT IS 'Esistenza dinamica' ,
UNMIS TEXT IS 'Unità di misura di stoccaggio' ,
MVALS TEXT IS 'Valore movimento a prezzo concordato' ,
MVALE TEXT IS 'Valore effettivo del movimento' ,
TPORD TEXT IS 'Tipo ordine' ,
CDORD TEXT IS 'Codice ordine' ,
NRLOT TEXT IS 'Numero lotto' ,
TIRIG TEXT IS 'Tipo movimento per riga ordine cliente' ,
SEQLG TEXT IS 'Sequenza di prelievo' ,
RIFFO TEXT IS 'Riferimento' ,
NUFAT TEXT IS 'Numero di fattura' ,
DAFAT TEXT IS 'Data della fattura' ,
NRBOL TEXT IS 'Numero bolla a terzista' ,
FLCF2 TEXT IS 'FLAG STAMPA GIORN.' ,
FLCF3 TEXT IS 'FLAG MOVIM.ELABOR.GEST.CONT.' ,
C$REP TEXT IS 'Codice reparto' ,
C$CEN TEXT IS 'Codice centro' ,
C$CAA TEXT IS 'Anno di chiave c/costo' ,
C$CBB TEXT IS 'Mese di chiave c/costo o "bu"come budget' ,
C$IND TEXT IS 'INDICE VALORE' ,
C$INT TEXT IS 'INDICE DATO TECNICO' ,
C$KF1 TEXT IS 'Y = HA GIà AGGIORNATO CIADA' ,
MDUBI TEXT IS 'UBICAZIONE' ,
TCOCT TEXT IS 'Tipo conto c/t' ,
MARIQ TEXT IS '3 variante di magazzino' ,
CDPOR TEXT IS 'ARTICOLO ORIGINANTE' ,
MARI2 TEXT IS '1 variante di magazzino' ,
MARI3 TEXT IS '2 variante di magazzino' ,
MARI4 TEXT IS '4 variante di magazzino' ,
NRMOL TEXT IS 'NUM.MOVIMENTO PER TRASFERIM.' ,
DAIMO$ TEXT IS 'DATA IMMISSIONE MOVIMENTO' ,
ORIMO$ TEXT IS 'ORA IMMISSIONE MOVIMENTO' ) ;