+ Start a Discussion
MVJMVJ 

Data Loader Command Line Interface

I have created a batch process that will export data from the account object using the CLI for the data loader. 

I want the job to extract data that has been modified since the job was last run.

How can I leverage the last run properties file in the pull the date time into the SOQL statement so I do not need to mnually modify the process-conf.xml each time.

Here is a copy of the processfile:


Code:
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
    <bean id="MDRAccountExtractProcess"
          class="com.salesforce.lexiloader.process.ProcessRunner"
          singleton="false">
      <description>MDRAccountExtract job gets account info from salesforce and saves info into a CSV file."</description>
        <property name="name" value="MDRAccountExtract"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.debugMessages" value="False"/>
                <entry key="sfdc.debugMessagesFile" value="D:\SFDC\DataLoader\conf\MVJTrace.log"/>
                <entry key="sfdc.endpoint" value="https://test.salesforce.com"/>
                <entry key="sfdc.username" value="xxxxxxxxxxx"/>
                <entry key="sfdc.password" value="xxxxxxxxxxx"/>
                <entry key="sfdc.timeoutSecs" value="600"/>
                <entry key="sfdc.loadBatchSize" value="200"/>
                <entry key="sfdc.entity" value="Account"/>
                <entry key="sfdc.extractionRequestSize" value="500"/>
                <entry key="sfdc.extractionSOQL" 
    value="
    Select Id,MDR_Account_Size__c,AnnualRevenue,MDR_Contract_Data_Lease__c,BillingCity,BillingCountry,BillingPostalCode,BillingState,BillingStreet,MDR_Bubble_Up__c,
    MDR_Bubble_Up_Expiration__c,MDR_Bubble_Up_Original_Account_Owner__c,MDR_Bubble_Up_Start__c,MDR_CDL_Contract_End_Date__c,CreatedDate,Description,Fax,Industry,
    LastModifiedById,LastModifiedDate,MDR_Account_Status__c,MDR_Customer_No__c,MDR_Territory_Code__c,Name,OwnerId,Phone,ShippingCity,ShippingCountry,
    ShippingPostalCode,ShippingState,ShippingStreet,Type,Website,MDR_Market__c,
    Competitive_Account__c from Account where LastModifiedDate > 2008-05-01T10:12:25Z and 
    Owner.Employee_Type__c like 'MDR%'
    "/>
            <entry key="sfdc.proxyHost" value="bastion2.us.dnb.com"/>
      <entry key="sfdc.proxyPort" value="8080"/>
                <entry key="process.operation" value="extract"/>
                <entry key="process.mappingFile" value="D:\SFDC\DataLoader\conf\MDRaccountExtractMap.sdl"/>
                <entry key="process.encryptionKeyFile" value="D:\SFDC\DataLoader\conf\MVJ.key"/>
      <entry key="process.enableExtractSuccessOutput" value="True"/>
           <entry key="process.outputSuccess" value="D:\sfdc\DataLoader\conf\MDRAccountExtractSuccessFile.csv"/>
                <entry key="dataAccess.type" value="csvWrite"/>
                <entry key="dataAccess.name" value="D:\SFDC\DataLoader\conf\MDRextract.csv"/>
            </map>
        </property>
    </bean>
</beans>

 

Thanks in advance

Mike
rajarakrajarak

Mike,

 

Any luck in achieving this?. I am trying to get the same from CLI.

Not sure if its possible.

 

Any suggestions appreciated.

 

Thanks

jrotensteinjrotenstein

Have you tried incorporating @process.lastRunDate@ within your SOQL statement?

 

eg SELECT .... WHERE LastModifiedDate > @process.lastRunDate@