updateCardData via ajax para atualizar registro formulário antes de movimentar

olá pessoal alguém mais que utilize o updateCardData via ajax, para realizar atualização do formulário no banco, antes de movimentar o formulário? Após fazer a atualização e clica para Enviar, o mesmo pede para pagina seja atualizada, para depois clicar no Enviar novamente e conseguir movimentar. Ou as vezes dá mensagem de erro, depois entra na solicitação novamente e vai. Existe a possibilidade de remover essa redundância?

Segue o código da atualização


try {
            var webServiceURL = "https://site1123/webdesk/ECMCardService?wsdl";
            var cXML = "";
                cXML += '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.dm.ecm.technology.totvs.com/">'
                cXML += '<soapenv:Header/>'
                cXML += '<soapenv:Body>'
                cXML += '<ws:updateCardData>'
                cXML += '<companyId>1</companyId>'
                cXML += '<username>user123</username>'
                cXML += '<password>pass123</password>'
                cXML += '<cardId>' + documento + '</cardId>'
                cXML += '<cardData>'
                cXML += '<item>'
                cXML += '<field>'+campo1+'</field>'
                cXML += '<value>'+valor1+'</value>'
                cXML += '</item>'
                cXML += '<item>'
                cXML += '<field>'+campo2+'</field>'
                cXML += '<value>'+valor2+'</value>'
                cXML += '</item>'
                cXML += '<item>'
                cXML += '<field>'+campo3+'</field>'
                cXML += '<value>'+valor3+'</value>'
                cXML += '</item>'
                cXML += '<item>'
                cXML += '<field>'+campo4+'</field>'
                cXML += '<value>'+valor4+'</value>'
                cXML += '</item>'
                cXML += '<item>'
                cXML += '<field>'+campo5+'</field>'
                cXML += '<value>'+valor5+'</value>'
                cXML += '</item>'
                cXML += '<item>'
                cXML += '<field>'+campo6+'</field>'
                cXML += '<value>'+valor6+'</value>'
                cXML += '</item>'
                cXML += '</cardData>'
                cXML += '</ws:updateCardData>'
                cXML += '</soapenv:Body>'
                cXML += '</soapenv:Envelope>'
         $.ajax({
            url: webServiceURL, 
            type: "POST",
            dataType: "xml", 
            data: cXML, 
            processData: false,
            contentType: "text/xml; charset=\"utf-8\"",
            success: OnSuccess, 
            error: OnError
        });
        return false;    
        } catch (error) {
            modalErro("Erro na função atualizaCampoFormulario: " + error);          
        }

Usuário tem sair e entrar na solicitação para conseguir movimentar.

erro enviar.JPG

:warning: Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.

Quando o usuário acessa a solicitação o fluig carrega os dados da solicitação e formulário com base na versão disponível naquele momento, se nesse meio tempo houver uma alteração de versão o dado que o usuário tinha foi em cima de um dado desatualizado. Isso é um controle para evitar perda de dados.

Na verdade não há redundância. O usuário já tem disponível botão salvar Padrão do fluig para poder gravar os dados que ele está operando.

Imagino que você tenha algum requisito que o motivou a fazer isso, mas o correto seria explicar o comportamento do sistema e orientar os usuários no uso correto do sistema.

O uso do updateCardData normalmente serve para alterar um formulário que não o atual em uso. Exemplo, uma widget que manipula cadastros, ou atualizar dados num pré cadastro a partir de um processo.