Identificativo articolo: 929277 - Ultima modifica: mercoledì 15 agosto 2007 - Revisione: 1.3
Messaggio di errore quando si tenta di integrare account in Microsoft Dynamics CRM 3.0 tramite Microsoft Dynamics CRM Connector: "CustomerKey esiste già e il flag di UpdateIfExists è impostato per non consentire aggiornamenti"
Si tenta di integrazione più account in Microsoft Dynamics CRM 3.0 come clienti in Microsoft Dynamics GP utilizzando Microsoft Dynamics CRM Connector per Microsoft Dynamics GP. Se il nome account del primo conto contiene 14 caratteri alfanumerici sono seguiti da uno spazio, il primo conto è stato integrato correttamente. Tuttavia, account successivi che dispongono di nomi di account di 14 caratteri potrebbe non essere integrato come previsto. Inoltre, viene visualizzato il seguente messaggio di errore:
CustomerKey esiste già e il flag UpdateIfExists è impostato per non consentire gli aggiornamenti.
Se i nomi di account contenenti 14 caratteri alfanumerici sono seguiti da uno spazio vengono integrati per Microsoft Dynamics GP e se si aggiorna la prima viene creato tale record cliente in Microsoft Dynamics GP, un account duplicato in Microsoft Dynamics CRM.
Si consideri il seguente scenario:
Creare un account in Microsoft Dynamics CRM è denominato Roma stato università. Si noti che questo nome di account non esiste nel Microsoft Dynamics CRM. Inoltre, il nome deve avere uno spazio vuoto come carattere 15 in Microsoft Dynamics CRM. Ad esempio, è possibile creare un account in Microsoft Dynamics CRM è denominato Nebraska stato University.
Questo nuovo record si integra per Microsoft Dynamics GP. Il record dispone "stato di Roma" il valore ID cliente e di un nome cliente della University dello stato di Roma. È possibile aggiornare il record del cliente in Microsoft Dynamics GP. Ad esempio, verrà modificato l'indirizzo di posta elettronica.
Si prevede che il record per l'integrazione di Microsoft Dynamics CRM come un aggiornamento del record esistente per università dello stato di Roma. Tuttavia, un account duplicati invece viene creato in Microsoft Dynamics CRM. Il nome dell'account per il record duplicato è università dello stato di Roma. Il nuovo account ora collega al cliente in Microsoft Dynamics GP.
Questo problema può verificarsi poiché in Microsoft Dynamics CRM Connector viene utilizzato il valore nel campo Nome account in Microsoft Dynamics CRM 3.0 per creare il valore nel campo (CUSTNMBR) numero cliente in Microsoft Dynamics GP.
Per impostazione predefinita, il valore nel campo Nome account in Microsoft Dynamics CRM 3.0 può contenere fino a 160 caratteri. In Microsoft Dynamics GP, il valore nel campo CUSTNMBR può contenere solo 15 caratteri. Quando il valore nel campo CUSTNMBR viene creato durante il processo di integrazione, lo spazio che segue un nome di account di 14 caratteri, un valore CUSTNMBR duplicato da creare.
Per risolvere questo problema, aggiornare Microsoft Dynamics CRM Connector esegue il mapping sul computer che esegue Microsoft BizTalk Server. A tale scopo, eseguire la procedura seguente.
Passaggio 1: impostare i progetti BizTalk Visual Studio per Microsoft Dynamics CRM Connector
Creare una nuova soluzione vuota in Microsoft Visual Studio. A tale scopo, attenersi alla seguente procedura:
Avviare Microsoft Visual Studio .NET 2003.
Dal menu File , fare clic su nuovo e quindi soluzione vuota .
Nella casella Nome digitare IntegrationSolution come nome della soluzione, quindi OK .
Copiare la cartella SchemaMaps dal percorso di installazione di Microsoft Dynamics CRM Connector della cartella principale per la soluzione vuota. A tale scopo, attenersi alla seguente procedura:
Individuare i file di installazione di Microsoft Dynamics CRM Connector.
Fare clic con il pulsante destro del mouse sulla cartella SchemaMaps e quindi scegliere Copia .
Individuare la soluzione IntegrationSolution . Per impostazione predefinita, la soluzione si trova nella cartella seguente:
C:\Documents and Settings\ username \Documenti\Visual Studio Projects
Aprire la cartella IntegrationSolution .
Fare clic con il pulsante destro del mouse un punto vuoto nella cartella e quindi scegliere Incolla .
Aggiungere tre progetti di BizTalk nella cartella SchemaMaps alla soluzione vuota. A tale scopo, attenersi alla seguente procedura:
Scegliere Esplora dal menu Visualizza .
Fare clic con il pulsante destro del mouse sulla soluzione in Esplora soluzioni, fare clic su Aggiungi e quindi scegliere progetto esistente .
Aprire la cartella SchemaMaps e quindi aprire la cartella CRMSchemas .
Fare doppio clic sul file CRMSchemas.btproj .
Fare clic con il pulsante destro del mouse sulla soluzione in Esplora soluzioni, fare clic su Aggiungi e quindi scegliere progetto esistente .
Aprire la cartella GPSchemas .
Fare doppio clic sul file GPSchemas.btproj .
Fare clic con il pulsante destro del mouse sulla soluzione in Esplora soluzioni, fare clic su Aggiungi e quindi scegliere progetto esistente .
Aprire la cartella Mapscrmgp .
Fare doppio clic sul file Mapscrmgp.btproj .
Creare un file chiave nome sicuro per firmare l'output di ogni progetto. A tale scopo, attenersi alla seguente procedura:
Fare clic sul pulsante Start , scegliere Tutti I programmi scegliere Microsoft Visual Studio .NET 2003 , strumenti di Visual Studio .NET e quindi fare clic su prompt dei comandi di Visual Studio .NET 2003 .
Al prompt dei comandi digitare il comando seguente e premere INVIO:
sn -k the path in which you want the strong name key file to be written \ snk file_name
Consente di impostare ogni progetto da utilizzare il file chiave con nome sicuro per firmare l'output di ogni progetto. A tale scopo, attenersi alla seguente procedura in Microsoft Visual Studio per ogni progetto nella soluzione IntegrationSolution:
Fare clic con il pulsante destro del mouse sul progetto e quindi scegliere Proprietà .
proprietà comuni , scegliere assembly .
Nell'area nome sicuro , fai clic su false nella casella firma ritardo di assembly .
Nella casella file di chiave assembly digitare il percorso del file snk creato nel passaggio 4.
Fare clic su OK .
Aggiungere riferimenti ai file DLL di integrazione. A tale scopo, attenersi alla seguente procedura:
Espandere il progetto MapsCRMGP , espandere i riferimenti , fare clic con il pulsante destro del mouse i seguenti riferimenti a e quindi fare clic su Rimuovi :
Microsoft.MbsIntegration.CRMSchemas
Microsoft.MbsIntegration.GPSchemas
Microsoft.MbsIntegration.FunctoidsCRMGP
Fare clic con il pulsante destro del mouse su riferimenti e quindi fare clic su Aggiungi riferimento .
Fare clic su Sfoglia e quindi individuare il file Microsoft.MbsIntegration.FunctoidsCRMGP.dll .
Per impostazione predefinita, il file Microsoft.MbsIntegration.FunctoidsCRMGP.dll è nella stessa cartella dei file di installazione di Microsoft Dynamics CRM Connector.
Fare clic sul file Microsoft.MbsIntegration.FunctoidsCRMGP.dll , quindi Apri .
Fare clic con il pulsante destro del mouse su riferimenti e quindi fare clic su Aggiungi riferimento .
Nella scheda progetti selezionare il progetto CRMSchemas e il progetto GPSchemas , fare clic su Seleziona e quindi fare clic su OK .
Modificare il nome di assembly per l'output di progetto MapsCRMGP. A tale scopo, attenersi alla seguente procedura:
Fare clic con il pulsante destro del mouse sul progetto MapsCRMGP e quindi scegliere Proprietà .
In proprietà comuni , fare clic su generale .
Fare clic su Microsoft.MbsIntegration.MapsCRMGPCustom nella casella Nome assembly , quindi OK .
Passaggio 2: aggiorna la mappa Crm_account_to_gp_customer.btm BizTalk
In questo passaggio è necessario utilizzare un functoid di script per rimuovere gli spazi dal valore mappato al nodo CUSTNMBR. Il valore mappato al nodo CUSTNMBR è nella mappa BizTalk Crm_account_to_gp_customer.btm del progetto MapsCRMGP nella soluzione.
A tale scopo, attenersi alla seguente procedura:
Espandere il progetto MapsCRMGP .
Espandere la cartella AccountCustomer .
Fare doppio clic sul file Crm_account_to_gp_customer.btm .
In functoid avanzate nella casella degli strumenti Microsoft Visual Studio, trascinare un functoid di script nell'area di mapping .
Sul lato destro del file di mapping, individuare il nodo CUSTNMBR .
Individuare e quindi selezionare il collegamento che collega il nodo CUSTNMBR alla funzione di script nella mappa.
Nota Quando si seleziona il nodo di collegamento, il nodo di collegamento verrà modificato in blu.
Fare clic sull'estremità del collegamento che collega il nodo CUSTNMBR e quindi trascinare tale fine per il functoid di script nuovo aggiunto nell'area di mapping .
Fare clic sul functoid Script connesso utilizzando il collegamento e quindi trascinare il functoid script al nodo CUSTNMBR .
A questo punto è necessario un functoid di script è collegato a un altro functoid di script. Il functoid di script, inoltre, deve essere collegato al nodo CUSTNMBR .
Fare clic con il pulsante destro del mouse sul functoid di script aggiunto nell'area di mapping e quindi scegliere Proprietà .
Fare clic sul con i puntini di sospensione pulsante (... ) per la proprietà di script . Verrà visualizzata la finestra di dialogo Configura script functoid .
Nella casella Tipo di script , scegliere in linea C# .
Nella casella buffer script inline , selezionare e quindi eliminare il testo.
Copiare il codice riportato di seguito nell'area di testo del buffer script inline e quindi fare clic su OK .
Passaggio 3: pubblicare la mappa BizTalk Crm_account_to_gp_customer.btm personalizzata
In questo passaggio è necessario aggiornare la mappa BizTalk Crm_account_to_gp_customer.btm utilizzando impostazioni le strumento di amministrazione sul server in cui è in esecuzione Microsoft Dynamics CRM Connector. A tale scopo, attenersi alla seguente procedura:
Fare clic sul pulsante Start , scegliere Tutti I programmi , scegliere al connettore di Microsoft CRM per Microsoft Dynamics GP e quindi su Impostazioni e strumento di amministrazione .
Fare clic su Amministrazione e quindi fare clic su Integration Server .
Fare clic sulla scheda Personalizza mapping .
Fare clic su Aggiungi mapping .
Individuare e quindi aprire il file Microsoft.MbsIntegration.MapsCRMGPCustom.dll .
Nella finestra di dialogo Aggiungi nuova mappa pagina Web fare clic su Seleziona mapping e quindi Microsoft.MbsIntegration.MapsCRMGP.crm_account_to_gp_customer . Quindi, attenersi alla seguente procedura:
Nella casella Descrizione tipo di eseguire il mapping , digitare una descrizione per il mapping.
Nella casella Evento , scegliere Crea .
Nella casella dell'applicazione di origine , scegliere Microsoft CRM .
Nella casella entità di origine , scegliere account .
Nella casella dell'applicazione di destinazione , scegliere Microsoft Great Plains .
Fare clic sul cliente nella entità di destinazione .
Fare clic su Distribuisci mapping .
Fare clic su OK .
Fare clic sul pulsante Start , scegliere Tutti I programmi , strumenti di amministrazione e quindi fare clic su servizi .
Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica. Nel caso in cui si riscontrino degli errori e si desideri inviare dei suggerimenti, è possibile completare il questionario riportato alla fine del presente articolo.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 929277
(http://support.microsoft.com/kb/929277/en-us/
)
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.