none
CAMBIO DE DIVISA EN OPORTUNIDADES RRS feed

  • Pregunta

  • Hola a todos me da gusto saludarlos, tengo un problema genere oportunidades cuya divisa le puse USD pero cometi un error tenia que ponerle pesos mexicanos el campo por default una vez guardada la oportunidades se convierte de solo lectura, como puedo corregir este error y en lugar de que salga la Divisa en USD sea Pesos, porfavor ayudenme en verdad me urge :(

    Gracias por todo y saludos.

    jueves, 19 de mayo de 2011 15:33

Respuestas

  • Hola Monica.

    Has probado hacerlo a traves de un workflow on-deman que actualice ese dato?

    Yo no lo he probado pero como a veces esta técnica se aplica para cambiar cosas que no puedes a través de la interfaz web (ej. cambiar el estado de una oferta como te respondí en otro thread), quizá se pueda de esta manera tambien.

     

    Espero te sirva, cuéntanos como te fue. Saludos,

    PP


    Microsoft MVP Dynamics CRM | My Twitter: http://twitter.com/pabloperalta | My blog: http://weblogs.asp.net/pabloperalta | Blog en Español: http://wwww.elblogdedynamicscrm.com
    lunes, 23 de mayo de 2011 12:47
  • Hola Mónica,

    Creo que la idea de Pablo podría funcionar sin problemas. Por otro lado, también sería posible poder realizar una actualización mediante el SDK desarrollando una aplicación que contenga un código similar al siguiente:

    [C#]
    // Set up the CRM service.
    CrmAuthenticationToken token = new CrmAuthenticationToken();
    // You can use enums.cs from the SDK\Helpers folder to get the enumeration for Active Directory authentication.
    token.AuthenticationType = 0;
    token.OrganizationName = "AdventureWorksCycle";
     
    CrmService service = new CrmService();
    service.Url = "http://<servername>:<port>/mscrmservices/2007/crmservice.asmx";
    service.CrmAuthenticationTokenValue = token;
    service.Credentials = System.Net.CredentialCache.DefaultCredentials;

    // Create the opportunity object.
    opportunity opportunity = new opportunity();

    // Set the properties of the opportunity object to be updated.
    opportunity.transactioncurrencyid = new Lookup(EntityName.transactioncurrency.ToString(), new Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"));

    // opportunityid is a key that references the ID of the opportunity to be updated.
    opportunity.opportunityid = new Key();
    // opportunityid.Value is the GUID of the record to be changed.
    opportunity.opportunityid.Value = new Guid("2B951FBC-1C56-4430-B23B-20A1349068F3");

    // Create the target object for the request.
    TargetUpdateopportunity target = new TargetUpdateopportunity();

    // Set the properties of the target object.
    target.opportunity = opportunity;

    // Create the request object.
    UpdateRequest update = new UpdateRequest();

    // Set the properties of the request object.
    update.Target = target;
      
    // Execute the request.
    UpdateResponse updated = (UpdateResponse)service.Execute(update);

    Aquí tienes que considerar el GUID del registro de la oportunidad que desees cambiar como el GUID de la nueva DIVISA que le quieras asignar.

     


    Julio
    lunes, 23 de mayo de 2011 15:49

Todas las respuestas

  • Hola Monica.

    Has probado hacerlo a traves de un workflow on-deman que actualice ese dato?

    Yo no lo he probado pero como a veces esta técnica se aplica para cambiar cosas que no puedes a través de la interfaz web (ej. cambiar el estado de una oferta como te respondí en otro thread), quizá se pueda de esta manera tambien.

     

    Espero te sirva, cuéntanos como te fue. Saludos,

    PP


    Microsoft MVP Dynamics CRM | My Twitter: http://twitter.com/pabloperalta | My blog: http://weblogs.asp.net/pabloperalta | Blog en Español: http://wwww.elblogdedynamicscrm.com
    lunes, 23 de mayo de 2011 12:47
  • Hola Mónica,

    Creo que la idea de Pablo podría funcionar sin problemas. Por otro lado, también sería posible poder realizar una actualización mediante el SDK desarrollando una aplicación que contenga un código similar al siguiente:

    [C#]
    // Set up the CRM service.
    CrmAuthenticationToken token = new CrmAuthenticationToken();
    // You can use enums.cs from the SDK\Helpers folder to get the enumeration for Active Directory authentication.
    token.AuthenticationType = 0;
    token.OrganizationName = "AdventureWorksCycle";
     
    CrmService service = new CrmService();
    service.Url = "http://<servername>:<port>/mscrmservices/2007/crmservice.asmx";
    service.CrmAuthenticationTokenValue = token;
    service.Credentials = System.Net.CredentialCache.DefaultCredentials;

    // Create the opportunity object.
    opportunity opportunity = new opportunity();

    // Set the properties of the opportunity object to be updated.
    opportunity.transactioncurrencyid = new Lookup(EntityName.transactioncurrency.ToString(), new Guid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"));

    // opportunityid is a key that references the ID of the opportunity to be updated.
    opportunity.opportunityid = new Key();
    // opportunityid.Value is the GUID of the record to be changed.
    opportunity.opportunityid.Value = new Guid("2B951FBC-1C56-4430-B23B-20A1349068F3");

    // Create the target object for the request.
    TargetUpdateopportunity target = new TargetUpdateopportunity();

    // Set the properties of the target object.
    target.opportunity = opportunity;

    // Create the request object.
    UpdateRequest update = new UpdateRequest();

    // Set the properties of the request object.
    update.Target = target;
      
    // Execute the request.
    UpdateResponse updated = (UpdateResponse)service.Execute(update);

    Aquí tienes que considerar el GUID del registro de la oportunidad que desees cambiar como el GUID de la nueva DIVISA que le quieras asignar.

     


    Julio
    lunes, 23 de mayo de 2011 15:49