Compartilhar via


Xrm.Mobile.offline (referência do cliente)

 

Publicado: janeiro de 2017

Aplicável a: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

O namespace Xrm.Mobile.offline fornece métodos para criar e gerenciar registros nos clientes móveis do Dynamics 365 (Dynamics 365 para telefones e Dynamics 365 para tablets) ao trabalhar no modo offline.

Observação

O namespace Xrm.Mobile.offline foi introduzido no Atualização de dezembro de 2016 para Dynamics 365 (online e local).

Essas APIs de cliente com o namespace Xrm.Mobile.offline só funcionarão se você estiver em modo offline e para entidades que estejam habilitadas para sincronização Mobile Offline.Para obter mais informações:Ajuda e Treinamento: Configurar a sincronização Mobile Offline do CRM em telefones e tablets

Importante

Ao criar ou atualizar um registro no modo offline, somente a validação básica é executada nos dados de entrada. A validação básica inclui itens como, verificar se o nome do atributo da entidade especificado está em letras minúsculas e existe para uma entidade, verificar incompatibilidade do tipo de dados para o valor do atributo especificado, evitar que os registros sejam criados com o mesmo valor GUID, verificar se a entidade relacionada é habilitada quando offline ao recuperar registros relacionados da entidade e validar se o registro que você deseja recuperar, atualizar ou excluir realmente existe no armazenamento de dados offline. As validações em nível de negócios acontecem somente quando você estiver conectado ao servidor do Dynamics 365 e os dados forem sincronizados. Um registro é criado ou atualizado no Dynamics 365 somente se os dados de entrada forem totalmente válidos.

Neste tópico

isOfflineEnabled

createRecord

retrieveRecord

retrieveMultipleRecords

updateRecord

deleteRecord

isOfflineEnabled

Retorna se uma entidade está habilitada ou não para o modo offline.

Xrm.Mobile.offline.isOfflineEnabled("entityType")
  • Parâmetros
    Tipo:: Cadeia de caracteres. O tipo de entidade no Dynamics 365. Por exemplo: "conta". Para saber mais sobre tipos de entidade no Dynamics 365, consulte Web API EntityType Reference.

  • Valor de Retorno
    Tipo:: Booliano.True se a entidade estiver habilitada para uso offline, do contrário false.

createRecord

Cria um registro de entidade nos clientes móveis do Dynamics 365 ao trabalhar no modo offline.

Xrm.Mobile.offline.createRecord(entityType, data).then(successCallback, errorCallback)
  • Parâmetros

    Nome

    Digite

    Obrigatório

    Descrição

    entityType

    Cadeia de caracteres

    Sim

    O tipo de entidade no Dynamics 365 para a qual você deseja criar um registro. Por exemplo: "conta". Para saber mais sobre tipos de entidade noDynamics 365, consulte Web API EntityType Reference

    Dados do

    Objeto

    Sim

    Um objeto de dicionário contendo pares key : value, em que key é a propriedade do conjunto de entidades e value é o valor da propriedade que você deseja usar para criar o registro da entidade. Por exemplo, defina o objeto a seguir para criar uma conta:

    var myAccount = {};
    myAccount.name = "Sample Account Name";
    myAccount.accountid = "2724A2AF-697E-E611-80DB-00155DB412B4";
    myAccount.parentaccountid = {
        "logicalname": "account",
        "id": "76BE5E4A-5990-E611-80DA-00155DD8BA2D"
    };
    myAccount.revenue = "60000.00";
    myAccount.primarycontactid = {
        "logicalname": "contact",
        "id": "76BE5E4A-5990-E611-80DA-00155DD8BA2D"
    };
    myAccount.new_customdate = new Date("September 29, 2016 12:00:00");
    

    Para saber mais sobre tipos de entidade e suas propriedades no Dynamics 365, consulte Web API EntityType Reference.

    successCallback

    Função

    Não

    Uma função a ser chamada quando um registro for criado. Um objeto com as seguintes propriedades serão informados para identificar o novo registro:

    • id: Cadeia de caracteres. GUID do registro que foi criado.

    • logicalName: Cadeia de caracteres. Nome lógico da entidade.

    errorCallback

    Função

    Não

    Uma função para chamar quando a operação falha. Será passado um objeto com as seguintes propriedades:

    • errorCode: Número. O código de erro.

    • message: Cadeia de caracteres. Uma mensagem de erro descrevendo o problema.

    • debugMessage: Cadeia de caracteres. Uma mensagem de erro interna que pode conter detalhes adicionais sobre o problema.

  • Limitações

    • Não é possível criar entidades de interseção e entidades participantes da atividade.

    • Há suporte apenas para os seguintes tipos de atributos para criar um registro no modo offline: BigInt, Boolean, Customer, DateTime, Decimal, Double, EntityName, Integer, Lookup, Memo, Money, Owner, Picklist, String, State, Status e UniqueIdentifier.

retrieveRecord

Recupera um registro de entidade nos clientes móveis do Dynamics 365 ao trabalhar no modo offline.

Xrm.Mobile.offline.retrieveRecord(entityType, id, options).then(successCallback, errorCallback)
  • Parâmetros

    Nome

    Digite

    Obrigatório

    Descrição

    entityType

    Cadeia de caracteres

    Sim

    O tipo de entidade no Dynamics 365 da qual você deseja recuperar um registro. Por exemplo: "conta". Para saber mais sobre tipos de entidade noDynamics 365, consulte Web API EntityType Reference

    ID

    Cadeia de caracteres

    Sim

    GUID do registro que você deseja recuperar.

    opções

    Cadeia de caracteres

    Não

    Opções de consulta do sistema OData para recuperar seus dados. Há suporte para as seguintes opções do sistema de consulta: $select e $expand.

    • Para usar $expand, a entidade relacionada deve estar habilitada para uso offline. Por exemplo, para recuperar o contato relacionado a um registro de contato, as entidades conta e contato devem estar habilitadas para uso offline.

    • Você especifica as opções de consulta começando com ?. Para especificar várias opções de consulta, use & para separar as opções de consulta. Por exemplo:

      ?$select=name&$expand=primarycontactid($select=contactid,fullname)
      

    Dica

    Como prática recomendada de desempenho, limite o número de propriedades que você está recuperando usando a opção de consulta $select. Do contrário, todas as propriedades serão recuperadas.

    Ao recuperar nomes de propriedades de entidade relacionados usando a opção $expand, incluir simplesmente o nome da propriedade de navegação retornará também todas as propriedades dos registros relacionados. Você pode limitar as propriedades retornadas dos registros relacionados usando a opção de consulta do sistema $select depois do nome da propriedade de navegação em $expand. Mais Informações: Recuperar entidades relacionadas para uma entidade expandindo as propriedades de navegação

    successCallback

    Função

    Não

    Uma função a ser chamada quando um registro for recuperado. Um objeto com as seguintes propriedades será informado para identificar o registro recuperado:

    • id: Cadeia de caracteres. GUID do registro que foi recuperado.

    • logicalName: Cadeia de caracteres. Nome lógico da entidade.

    errorCallback

    Função

    Não

    Uma função para chamar quando a operação falha. Será passado um objeto com as seguintes propriedades:

    • errorCode: Número. O código de erro.

    • message: Cadeia de caracteres. Uma mensagem de erro descrevendo o problema.

    • debugMessage: Cadeia de caracteres. Uma mensagem de erro interna que pode conter detalhes adicionais sobre o problema.

  • Limitações

    • Somente a opção $select pode ser especificada dentro de $expand.

    • Há suporte apenas para os seguintes tipos de atributos para recuperar um registro no modo offline: BigInt, Boolean, Customer, DateTime, Decimal, Double, EntityName, Integer, Lookup, Memo, Money, Owner, Picklist, String, State, Status e UniqueIdentifier.

retrieveMultipleRecords

Recupera uma coleção de registros de entidade nos clientes móveis do Dynamics 365 ao trabalhar no modo offline.

Xrm.Mobile.offline.retrieveMultipleRecords(entityType, options, maxPageSize).then(successCallback, errorCallback)
  • Parâmetros

    Nome

    Digite

    Obrigatório

    Descrição

    entityType

    Cadeia de caracteres

    Sim

    O tipo de entidade no Dynamics 365 da qual você deseja recuperar registros. Por exemplo: "conta". Para saber mais sobre tipos de entidade noDynamics 365, consulte Web API EntityType Reference

    opções

    Cadeia de caracteres

    Não

    Opções de consulta do sistema OData ou consulta FetchXML para recuperar seus dados. Há suporte para as seguintes opções do sistema de consulta: $select, $top, $filter, $expand e $orderby.

    • Para $filter, somente os operadores de filtragem padrão conforme mencionado na seção Filtrar resultados têm suporte. As funções de consulta padrão não têm suporte

    • Para usar $expand, a entidade relacionada deve estar habilitada para uso offline. Por exemplo, para recuperar o contato para os registros de contato, as entidades conta e contato devem estar habilitadas para uso offline. Se você expandir propriedades de navegação com valor de coleção para uma entidade para recuperar entidades relacionadas, uma propriedade [NavigationPropertyName]@odata.nextLink será retornada para as entidades relacionadas. Por exemplo, se você estiver expandindo na propriedade de navegação primarycontactid, será retornado primarycontactid@odata.nextLink. Você deve usar o valor da propriedade primarycontactid@odata.nextLink com uma nova solicitação GET para retornar os dados necessários.

    • Você especifica as opções de consulta começando com ?. Para especificar várias opções de consulta, use & para separar as opções de consulta. Por exemplo:

      ?$top=5&$select=name&$expand=primarycontactid($select=contactid,fullname)
      

      Usando FetchXml, você pode somente recuperar atributos de entidade base.

    Por exemplo, este é um exemplo de recuperação de várias chamadas usando as opções de consulta:

    ?fetchXml=<FetchXML>
    

    maxPageSize

    Inteiro

    Não

    Especifica um número positivo que indica o número de registros de entidade a serem retornados por página. Se você não especificar esse parâmetro, o valor padrão será passado como 5000.

    Se o número de registros que estão sendo recuperados for maior que o maxPageSize, uma propriedade @odata.nextLink será retornada e você poderá usar o valor da propriedade @odata.nextLink com uma nova solicitação GET para retornar o próximo conjunto de registros. Mais Informações: Especifique o número de entidades a serem retornadas em uma página

    successCallback

    Função

    Não

    Uma função a ser chamada quando os registros forem recuperados. Um dicionário contendo os pares key : value dos dados recuperados será passado para identificar os registros recuperados.

    errorCallback

    Função

    Não

    Uma função para chamar quando a operação falha. Será passado um objeto com as seguintes propriedades:

    • errorCode: Número. O código de erro.

    • message: Cadeia de caracteres. Uma mensagem de erro descrevendo o problema.

    • debugMessage: Cadeia de caracteres. Uma mensagem de erro interna que pode conter detalhes adicionais sobre o problema.

  • Limitações

    • Um máximo de 5000 registros relacionados podem ser recuperados ao usar o $expand.

    • Somente a opção $select pode ser especificada dentro de $expand.

    • Não há suporte à opção de consulta $skip.

    • Há suporte apenas para os seguintes tipos de atributos para recuperar registros no modo offline: BigInt, Boolean, Customer, DateTime, Decimal, Double, EntityName, Integer, Lookup, Memo, Money, Owner, Picklist, String, State, Status e UniqueIdentifier.

updateRecord

Atualiza um registro de entidade nos clientes móveis do Dynamics 365 ao trabalhar no modo offline.

Xrm.Mobile.offline.updateRecord(entityType, id, data).then(successCallback, errorCallback)
  • Parâmetros

    Nome

    Digite

    Obrigatório

    Descrição

    entityType

    Cadeia de caracteres

    Sim

    O tipo de entidade no Dynamics 365 para a qual você deseja atualizar um registro. Por exemplo: "conta". Para saber mais sobre tipos de entidade noDynamics 365, consulte Web API EntityType Reference

    ID

    Cadeia de caracteres

    Sim

    GUID do registro que você deseja atualizar.

    Dados do

    Objeto

    Sim

    Um objeto de dicionário contendo pares key : value, em que key é o nome lógico da propriedade que você deseja atualizar e value é o valor atualizado da propriedade. Somente as propriedades e os valores especificados no objeto de dicionário serão atualizados para o registro. por exemplo:

    var myUpdatedAccount = {};
    myUpdatedAccount.name = "Changed Account Name";
    myUpdatedAccount.revenue = "60000.00";

    successCallback

    Função

    Não

    Uma função a ser chamada quando um registro for atualizado. Um objeto com as seguintes propriedades serão informado para identificar o registro atualizado:

    • id: Cadeia de caracteres. GUID do registro que foi atualizado.

    • logicalName: Cadeia de caracteres. Nome lógico da entidade.

    errorCallback

    Função

    Não

    Uma função para chamar quando a operação falha. Será passado um objeto com as seguintes propriedades:

    • errorCode: Número. O código de erro.

    • message: Cadeia de caracteres. Uma mensagem de erro descrevendo o problema.

    • debugMessage: Cadeia de caracteres. Uma mensagem de erro interna que pode conter detalhes adicionais sobre o problema.

  • Limitações

    • Não é possível atualizar entidades de intersecção e entidades participantes da atividade.

    • Há suporte apenas para os seguintes tipos de atributos para atualizar um registro no modo offline: BigInt, Boolean, Customer, DateTime, Decimal, Double, EntityName, Integer, Lookup, Memo, Money, Owner, Picklist, String, State, Status e UniqueIdentifier.

deleteRecord

Exclui um registro de entidade nos clientes móveis do Dynamics 365 ao trabalhar no modo offline.

Xrm.Mobile.offline.deleteRecord(entityType, id).then(successCallback, errorCallback)
  • Parâmetros

    Nome

    Digite

    Obrigatório

    Descrição

    entityType

    Cadeia de caracteres

    Sim

    O tipo de entidade no Dynamics 365 da qual você deseja excluir um registro. Por exemplo: "conta". Para saber mais sobre tipos de entidade noDynamics 365, consulte Web API EntityType Reference

    ID

    Cadeia de caracteres

    Sim

    GUID do registro que você deseja excluir.

    successCallback

    Função

    Não

    Uma função a ser chamada quando um registro for excluído. Um objeto com as seguintes propriedades será informado para identificar o registro excluído:

    • id: Cadeia de caracteres. GUID do registro que foi excluído.

    • logicalName: Cadeia de caracteres. Nome lógico da entidade.

    errorCallback

    Função

    Não

    Uma função para chamar quando a operação falha. Será passado um objeto com as seguintes propriedades:

    • errorCode: Número. O código de erro.

    • message: Cadeia de caracteres. Uma mensagem de erro descrevendo o problema.

    • debugMessage: Cadeia de caracteres. Uma mensagem de erro interna que pode conter detalhes adicionais sobre o problema.

  • Limitações
    Não é possível excluir entidades de intersecção e entidades participantes da atividade.

Confira Também

Escrever e depurar scripts para o Dynamics 365 para telefones e tablets
Referência de programação do cliente

Microsoft Dynamics 365

© 2017 Microsoft. Todos os direitos reservados. Direitos autorais