Bom dia pessoal, estou desenvolvendo um formulário e necessito capturar o valor de um campo radio selecionado e passar para um dataset customizado zoom. Alguem tem alguma ideia.
Bom dia pessoal, estou desenvolvendo um formulário e necessito capturar o valor de um campo radio selecionado e passar para um dataset customizado zoom. Alguem tem alguma ideia.
Bom dia pessoal, tive uma aula com um cara muito gente boa, Alef Vinicius, portanto vou compartilhar abaixo a Resolução do meu problema.
Eu necessitava recuperar os dados, da seleção de um dos Radios selecionados portanto usei a seguinte função.
function preencher_d(el) {
var valor = el.value;
valor = $("input:radio[name='opcao2']:checked").val();
//document.querySelector('input[name="mov"]').value = valor;
document.getElementById('mov').value = valor;
console.log(valor);
}
com isso armazenei, o valor em um campo hidden.
No primeiro zoom, chamei o dataset (consulta SQL pré cadastrada no RM) que preenche o CODCCUSTO.
<input type="zoom" name="Codccusto" id="Codccusto" data-zoom="{'displayKey':'CODCCUSTO','datasetId':'ds_centrodecusto_ativos',
E no segundo zoom, ele busca o valor do primeiro ZOOM + CODTMV, e passa como parametro para retornar o valor, de outro dataset Consulta SQL. para Capturar esses valores utilizei o seguinte código.
function setSelectedZoomItem(selectedItem) {
var codcusto = selectedItem["CODCCUSTO"];
var ccusto = selectedItem["CCUSTO"];
var DataEmissao = selectedItem["DATAEMISSAO"];
var NUMEROmov = document.getElementById('mov').value;//selectedItem["NUMEROMOV"];
var Codcfo = selectedItem["NOMEFANTASIA"];
var Valor = selectedItem["VALORLIQUIDO"];
var Idmov = selectedItem["IDMOV"];
if (selectedItem.inputId == "Codccusto" || selectedItem.inputId == "MOVIMENTO") {
//limpa_datatable('tableequipamento');
//document.getElementById("Codccusto").value = codcusto;
document.getElementById("dataemissao").value = DataEmissao;
document.getElementById("mov").value = NUMEROmov;
document.getElementById("numeroMov").value = NUMEROmov;
document.getElementById("codcfo").value = Codcfo;
document.getElementById("valorliquido").value = Valor;
document.getElementById("IdMov").value = Idmov;
reloadZoomFilterValues("MOVIMENTO", "COD_CUSTO," + selectedItem["CODCCUSTO"]+ ",COD_TMV,"+ NUMEROmov);
O Resultado, final foi a imagem abaixo. Deixo aqui a resposta caso possa ajudar alguém, pois conhecimento quando ganhamos deve ser compartilhado....
Bacana demais, Bruno, Parabén!
— Alef Vinicius 09 de Apr de 2020Fala, Bruno, você passa utilizando o reloadZoomFilterValues, porém, você precisa fazer o tratamento da constraint para o qie bem entender. Maaaaas, para passar a constraint é com esse método. Segue doc:
https://tdn.totvs.com/pages/releaseview.action?pageId=75270483
Alef, Eu consegui capturar o valor do RADIO BUTTON, mas não consigo passar como parametro para um DS customizado, estou apanhando, por não entender o processo de leitura do zoom com relação ao DS.
— BRUNO DYEGO CORREIA RAYOL 25 de Feb de 2020na verdade me DS CUSTOMIZADO esta funcionando, pois se eu declaro o parametro manualmente ele funciona, mas ao declarar utilizando constraints, ele não traz, o campo que esta declarado no CUSTOM.JS, ai esta minha dificuldade.
— BRUNO DYEGO CORREIA RAYOL 25 de Feb de 2020Bruno, nesse caso, aconselho que disponibilize o fonte do dataset para que entendamos melhor a situação.
— Alef Vinicius 25 de Feb de 2020Publiquei o anexo com DS e Formulario.
— BRUNO DYEGO CORREIA RAYOL 25 de Feb de 2020Alef Vinicius, o erro agora no log é esse, Quantidade de parâmetros passados para o SQL não corresponde ao esperado. Mas o parametro esta declarado.
— BRUNO DYEGO CORREIA RAYOL 27 de Feb de 2020