Domanda

Utilizzando DTS sto creando dinamicamente un database di accesso. Dopo che il file è stato creato (che funziona a questo punto) sto facendo in modo che il pacchetto DTS lo pubblichi via HTTP su un altro sito. (Questo HTTP è proprio come deve essere fatto - parte delle specifiche.)

Ma quando il pacchetto pubblica il file, la versione pubblicata esce come file a 0 byte. Il codice per pubblicare il file è testato e codice ben implementato. Sono sicuro che funziona. Un collega mi ha detto che crede che questo sia "0 byte" l'errore si verifica perché la connessione di Access non ha chiuso il file di accesso. Ha detto che il pacchetto DTS deve essere completato affinché il file di accesso sia chiuso.

La domanda è: come posso ottenere l'accesso per chiudere il file di Access prima che venga eseguito il passaggio per pubblicare il file?

Nel caso fosse necessario, i passaggi sono:

  • Crea il file di Access, imposta un oggetto di connessione di accesso predefinito su questo nuovo file
  • Crea la tabella in Access
  • Utilizzare un'attività Trasforma dati per popolare il database di accesso (da un server SQL)
  • Pubblica il file tramite HTTP (viene utilizzato Libaary predefinito / pretestato)

Grazie in anticipo per il tuo aiuto!

È stato utile?

Soluzione

La risposta, ho appena scoperto, è che appena prima di pubblicare il file (o dopo aver finito di scrivere sul file), il flusso di lavoro deve chiudere la connessione

Posso realizzarlo controllando " Chiudi connessione al completamento " casella di controllo nella scheda opzioni della finestra di dialogo Proprietà flusso di lavoro.

Grazie a tutti!

Altri suggerimenti

Credo che il tuo collega sia corretto, che la pubblicazione tramite HTTP molto probabilmente dovrà vivere al di fuori del DTS, oppure potresti dover cercare un modo VBS per chiudere la connessione, ma non sono sicuro che sia possibile .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top