1

Apex Data Loader を使用して Salesforce から Oracle にデータを転送しようとすると、次のエラーが発生します。

    26937 [databaseAccountExtract] FATAL com.salesforce.dataloader.dao.database.Data
baseContext  - Error getting value for SQL parameter: nkey__c.  Please make sure
 that the value exists in the configuration file or is passed in.  Database conf
iguration: insertAccount.

database-conf.xml には次の Bean があります。

<bean id="insertAccount"
      class="com.salesforce.dataloader.dao.database.DatabaseConfig"
      singleton="true">
    <property name="sqlConfig" ref="insertAccountSql"/>
    <property name="dataSource" ref="dbDataSource"/>
</bean>
<bean id="insertAccountSql" class="com.salesforce.dataloader.dao.database.SqlConfig" singleton="true">
    <property name="sqlString">
        <value>
            INSERT INTO VANTROPO.SF_ACCOUNTCHANNEL (nkey__c)
            VALUES (@nkey__c@)
        </value>
    </property>
    <property name="sqlParams">
        <map>
   <entry key="nkey__c" value="java.lang.String"/>
        </map>
    </property>
</bean>

SDL (マッピング ファイル) には次の値があります。

# Account Insert Mapping values for query from Salesforce (left) and insert/update to Oracle (right)
# SalesforceFieldName=OracleFieldName
nkey__c=NKEY__C

どんな助けでも感謝します。

4

1 に答える 1

0

私はあなたのケースを完全に一致させます...常にnkey__c例えば使用します

さらに重要なのは、マッピングファイル内の空白を取り除くことです...ビットを取得するのは非常に簡単です

nkey__c=nkey__cb(bは空白です)

psこれはがらくたです。

于 2010-07-18T18:39:36.360 に答える