﻿<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
    <bean id="ExtraerAgentes"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Extraer los agentes (Administradores de finca). Que son las cuentas con el tipo de registro Persona Física</description>
        <property name="name" value="ExtraerAgentes"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="Account"/>
                <entry key="process.operation" value="extract"/>
                <entry key="dataAccess.type" value="csvWrite"/>
                <entry key="dataAccess.name" value="./Ficheros/Agentes.csv"/>
				<entry key="dataAccess.writeUTF8" value="true" /> 
				<entry key="sfdc.extractionSOQL" value="Select Id, NIFCIF__C,NAME,COMPANYNAME__C,DESCRIPTION,STREET__C,CITY__C,POSTALCODE__R.NAME,STATE__C,COUNTRY__R.CODE__C,PHONE,OTHERPHONE__C,PHONE2__C,NATIONALITY__C,WEBSITE,FAX,ZONE__C From Account where Type = 'Agente' and LastModifiedDate = LAST_N_DAYS:1"/>   
            </map>
        </property>
    </bean>
	
	<bean id="ExtraerPriceBookEntry"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Extraer los PriceBookEntry para poder cargar las lineas de facturas</description>
        <property name="name" value="ExtraerPriceBookEntry"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="PricebookEntry"/>
                <entry key="process.operation" value="extract"/>
                <entry key="dataAccess.type" value="csvWrite"/>
                <entry key="dataAccess.name" value="./Ficheros/PriceBookEntry.csv"/>
				<entry key="dataAccess.writeUTF8" value="true" /> 
				<entry key="sfdc.extractionSOQL" value="Select Id, Pricebook2Id, Product2Id , Product2.ProductCode__c, Pricebook2.IdExterno__c FROM PricebookEntry"/>   
            </map>
        </property>
    </bean>
	
	<bean id="ExtraerAlbaranes"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Se extrae los albaranes (Facturas que tienen un número de albaran y no tienen número de factura y tienen el estado Proforma)</description>
        <property name="name" value="ExtraerAlbaranes"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="Order"/>
                <entry key="process.operation" value="extract"/>
                <entry key="dataAccess.type" value="csvWrite"/>
                <entry key="dataAccess.name" value="./Ficheros/AlbaranesSF.csv"/>
				<entry key="dataAccess.writeUTF8" value="true" /> 
				<entry key="sfdc.extractionSOQL" value="SELECT Id FROM Order where NumberInvoice__c =  null and PoNumber__c != null and status = 'Proforma'"/>   
            </map>
        </property>
    </bean>
	
	<bean id="ExtraerLineasFacturas"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Se extrae las lineas de las facturas de las facturas que se están cargando</description>
        <property name="name" value="ExtraerLineasFacturas"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="OrderItem"/>
                <entry key="process.operation" value="extract"/>
                <entry key="dataAccess.type" value="csvWrite"/>
                <entry key="dataAccess.name" value="./Ficheros/ExtractLineasFacturas.csv"/>
				<entry key="dataAccess.writeUTF8" value="true" /> 
				<entry key="sfdc.extractionSOQL" value="SELECT Id FROM OrderItem where order.LastModifiedDate = today and order.lastModifiedBy.Name = 'INTEGRACION'"/>   
            </map>
        </property>
    </bean>
		
	<bean id="UpsertDatosInmuebles"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Upsert de las cuentas de tipo cliente, actualización de los datos de inmuebles</description>
        <property name="name" value="UpsertDatosInmuebles"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="Account"/>
                <entry key="process.operation" value="upsert"/>
				<entry key="sfdc.externalIdField" value="Id"/>
                <entry key="process.mappingFile" value="./DataLoader/map/MapDatosInmuebles.sdl"/>
                <entry key="dataAccess.type" value="csvRead"/>
                <entry key="dataAccess.name" value="./Ficheros/DatosInmueble.csv"/>
				<entry key="process.outputSuccess" value="./DataLoader/logs/Success_DatosInmueble.csv"/>
				<entry key="process.outputError" value="./DataLoader/logs/Error_DatosInmuebles.csv"/>
            </map>
        </property>
    </bean>
	
	<bean id="UpsertRiesgosClientes"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Upsert de las cuentas de tipo cliente, actualización de los riesgos del cliente</description>
        <property name="name" value="UpsertRiesgosClientes"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="Account"/>
                <entry key="process.operation" value="update"/>
                <entry key="process.mappingFile" value="./DataLoader/map/MapRiesgosClientes.sdl"/>
                <entry key="dataAccess.type" value="csvRead"/>
                <entry key="dataAccess.name" value="./Ficheros/RiesgosClientes.csv"/>
				<entry key="process.outputSuccess" value="./DataLoader/logs/Success_RiesgosClientes.csv"/>
				<entry key="process.outputError" value="./DataLoader/logs/Error_RiesgosClientes.csv"/>
            </map>
        </property>
    </bean>
	
	<bean id="UpsertRiesgos"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Upsert de los clientes/empresa</description>
        <property name="name" value="UpsertRiesgos"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="CustomerCompany__c"/>
                <entry key="process.operation" value="upsert"/>
				<entry key="sfdc.externalIdField" value="ExternalId__c"/>
                <entry key="process.mappingFile" value="./DataLoader/map/MapRiesgos.sdl"/>
                <entry key="dataAccess.type" value="csvRead"/>
                <entry key="dataAccess.name" value="./Ficheros/Riesgos.csv"/>
				<entry key="process.outputSuccess" value="./DataLoader/logs/Success_Riesgos.csv"/>
				<entry key="process.outputError" value="./DataLoader/logs/Error_Riesgos.csv"/>
            </map>
        </property>
    </bean>
	
	<bean id="UpsertContratos"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Upsert de los contratos</description>
        <property name="name" value="UpsertContratos"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="Contract"/>
                <entry key="process.operation" value="upsert"/>
				<entry key="sfdc.externalIdField" value="IdExterno__c"/>
                <entry key="process.mappingFile" value="./DataLoader/map/MapContratos.sdl"/>
                <entry key="dataAccess.type" value="csvRead"/>
                <entry key="dataAccess.name" value="./Ficheros/Contratos.csv"/>
				<entry key="process.outputSuccess" value="./DataLoader/logs/Success_Contratos.csv"/>
				<entry key="process.outputError" value="./DataLoader/logs/Error_Contratos.csv"/>
            </map>
        </property>
    </bean>
	
	<bean id="UpsertFacturas"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Upsert de las facturas</description>
        <property name="name" value="UpsertFacturas"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="Order"/>
                <entry key="process.operation" value="upsert"/>
				<entry key="sfdc.externalIdField" value="NumberInvoice__c"/>
                <entry key="process.mappingFile" value="./DataLoader/map/MapFacturas.sdl"/>
                <entry key="dataAccess.type" value="csvRead"/>
                <entry key="dataAccess.name" value="./Ficheros/Facturas.csv"/>
				<entry key="process.outputSuccess" value="./DataLoader/logs/Success_Facturas.csv"/>
				<entry key="process.outputError" value="./DataLoader/logs/Error_Facturas.csv"/>
            </map>
        </property>
    </bean>
	
	<bean id="UpsertFacturasLineas"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Upsert de las líneas de las facturas</description>
        <property name="name" value="UpsertFacturasLineas"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="OrderItem"/>
                <entry key="process.operation" value="upsert"/>
				<entry key="sfdc.externalIdField" value="IdExterno__c"/>
                <entry key="process.mappingFile" value="./DataLoader/map/MapFacturasLineas.sdl"/>
                <entry key="dataAccess.type" value="csvRead"/>
                <entry key="dataAccess.name" value="./Ficheros/FacturasLineas.csv"/>
				<entry key="process.outputSuccess" value="./DataLoader/logs/Success_FacturasLineas.csv"/>
				<entry key="process.outputError" value="./DataLoader/logs/Error_FacturasLineas.csv"/>
            </map>
        </property>
    </bean>
	
	<bean id="UpsertActivarFacturas"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Upsert de las facturas para activarlas y pasarlas al estado de Venta</description>
        <property name="name" value="UpsertActivarFacturas"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="Order"/>
                <entry key="process.operation" value="upsert"/>
				<entry key="sfdc.externalIdField" value="NumberInvoice__c"/>
                <entry key="process.mappingFile" value="./DataLoader/map/MapActivarFacturas.sdl"/>
                <entry key="dataAccess.type" value="csvRead"/>
                <entry key="dataAccess.name" value="./Ficheros/Facturas.csv"/>
				<entry key="process.outputSuccess" value="./DataLoader/logs/Success_FacturasActivadas.csv"/>
				<entry key="process.outputError" value="./DataLoader/logs/Error_FacturasActivadas.csv"/>
            </map>
        </property>
    </bean>	
	
	<bean id="UpsertAlbaranes"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Upsert de las facturas</description>
        <property name="name" value="UpsertAlbaranes"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="Order"/>
                <entry key="process.operation" value="upsert"/>
				<entry key="sfdc.externalIdField" value="PoNumber__c"/>
                <entry key="process.mappingFile" value="./DataLoader/map/MapAlbaranes.sdl"/>
                <entry key="dataAccess.type" value="csvRead"/>
                <entry key="dataAccess.name" value="./Ficheros/Albaranes.csv"/>
				<entry key="process.outputSuccess" value="./DataLoader/logs/Success_Albaranes.csv"/>
				<entry key="process.outputError" value="./DataLoader/logs/Error_Albaranes.csv"/>
            </map>
        </property>
    </bean>
	
	<bean id="DeleteAlbaranes"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Eliminamos los albaranes</description>
        <property name="name" value="DeleteAlbaranes"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="Order"/>
                <entry key="process.operation" value="delete"/>
                <entry key="process.mappingFile" value="./DataLoader/map/MapDeleteAlbaranes.sdl"/>
                <entry key="dataAccess.type" value="csvRead"/>
                <entry key="dataAccess.name" value="./Ficheros/AlbaranesSF.csv"/>
				<entry key="process.outputSuccess" value="./DataLoader/logs/Success_EliminarAlbaranes.csv"/>
				<entry key="process.outputError" value="./DataLoader/logs/Error_EliminarAlbaranes.csv"/>
            </map>
        </property>
    </bean>	
	
	<bean id="DeleteLineasFacturas"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Eliminamos los albaranes</description>
        <property name="name" value="DeleteLineasFacturas"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="OrderItem"/>
                <entry key="process.operation" value="delete"/>
                <entry key="process.mappingFile" value="./DataLoader/map/MapDeleteAlbaranes.sdl"/>
                <entry key="dataAccess.type" value="csvRead"/>
                <entry key="dataAccess.name" value="./Ficheros/ExtractLineasFacturas.csv"/>
				<entry key="process.outputSuccess" value="./DataLoader/logs/Success_EliminarLineasFacturas.csv"/>
				<entry key="process.outputError" value="./DataLoader/logs/Error_EliminarLineasFacturas.csv"/>
            </map>
        </property>
    </bean>	
	
	<bean id="ContratosBorrador"
          class="com.salesforce.dataloader.process.ProcessRunner"
          singleton="false">
      <description>Insertamos los contratos como borradores</description>
        <property name="name" value="ContratosBorrador"/>
        <property name="configOverrideMap">
            <map>
                <entry key="sfdc.entity" value="Contract"/>
                <entry key="process.operation" value="upsert"/>
				<entry key="sfdc.externalIdField" value="IdExterno__c"/>
                <entry key="process.mappingFile" value="./DataLoader/map/MapContratoBorrador.sdl"/>
                <entry key="dataAccess.type" value="csvRead"/>
                <entry key="dataAccess.name" value="./Ficheros/Contratos.csv"/>
				<entry key="process.outputSuccess" value="./DataLoader/logs/Success_ContratosBorrador.csv"/>
				<entry key="process.outputError" value="./DataLoader/logs/Error_ContratosBorrador.csv"/>
            </map>
        </property>
    </bean>
	
</beans>
