0
How do I execute a function after executing all screen functions?
I have a screen that needs to be completely filled in for me to invoke a field fill function.
The function :
$(document).ready({
if(pPimId) {
$.ajax({
url: "/Pim/Pim/ObterPimPorId",
data: { pPimId: pPimId },
beforeSend: function () {
adicionarLoadingTela();
}
}).done(function (result) {
console.log(result);
$("#txbPimCodigo").val(result.Retorno.Id);
$("#txbPimCodigoOrigem").val(result.Retorno.idOrigem);
$("#ddlAlmoxarifado").val(result.Retorno.Almoxarifado).selectpicker("refresh");
$("#ddlStatus").val(result.Retorno.Situacao.Id).selectpicker("refresh");
$("#ddlTipo").val(result.Retorno.Tipo.Id).selectpicker("refresh");
$("#ddlEstabelecimento").val(result.Retorno.Estabelecimento.Sigla).selectpicker("refresh");
$("#ddlObjetivo").val(result.Retorno.Objetivo.Id).selectpicker("refresh");
$("#txbPimCodigo").val(result.Retorno.Id);
removerLoadingTela();
});
}
})
Must be loaded after loading the script :
var itemSequencia = 0;
var _arquivosArray = [];
var _tiposArquivo = ['jpg', 'png', 'bmp', 'tif', 'pdf', 'xls', 'xlsx', 'doc', 'docx', 'txt', 'zip', 'rar', 'dat', '7z', 'msg', 'html'];
var _arquivo;
var pPimId = getParameterByName('pPimId');
$("#btnGravar").click(function () {
if ($('#formPim').valid()) {
if ($('#tbItem tbody tr').length > 0) {
$.ajax({
url: "/ATPGTO/AP/ObterDadosUsuario"
}).done(function (dadosUsuario) {
var itens = [];
$('#tbItem tbody tr').each(function () {
var item = {
'Pim': { 'Id': $("#txbPimCodigo").val() },
'Item': { 'Id': $($(this).find('td').get(0)).text() },
DescricaoComplementar: $($(this).find('td').get(4)).text(),
Qtde: $($(this).find('td').get(1)).text(),
UltimasCompras: $($(this).find('td').get(5)).text(),
UltValor: $($(this).find('td').get(6)).text(),
'EstabelecimentoDestino.Sigla': $($(this).find('td').get(8)).text(),
'Destino.Id': $($(this).find('td').get(9)).text(),
OrdemDeServico: $($(this).find('td').get(11)).text(),
Alocacao: $($(this).find('td').get(12)).text()
};
itens.push(item);
});
var orcamentos = [];
$.each(_arquivosArray, function (i, e) {
var orcamento = {
Descricao: e._arquivo.name,
'Fornecedor.Nome': e._fornecedor,
OpcaoTecnica: e._opcaoTecnica,
Valor: e._valor
};
orcamentos.push(orcamento);
});
var param = {
pPimId: $("#txbPimCodigo").val() == "" ? "0" : $("#txbPimCodigo").val(),
pPimIdOrigem: $("#txbPimCodigoOrigem").val() == "" ? "0" : $("#txbPimCodigoOrigem").val(),
pPimElaboradorId: dadosUsuario.Id,
pPimEstabelecimentoSigla: $("#ddlEstabelecimento").val(),
pPimCentroCustoElaboradorId: $("#ddlUfElaboradora").val(),
pPimCentroCustoDestinoId: $("#ddlDestino").val(),
pPimPrazo: $("#txbPrazo").val(),
pPimResumo: $("#txbResumo").val(),
pPimJustificativa: $("#txbJustificativa").val(),
pPimPlanejado: $("#ddlPlanejado").val(),
pPimProjetoId: $("#txbProjetoCodigo").val() == "" ? "0" : $("#txbProjetoCodigo").val(),
pPimObjetivoId: $("#ddlObjetivo").val(),
pPimTipoId: $("#ddlTipo").val(),
pPimOrcamentoDescritivo: $("#txbOrcamentoDescritivo").val(),
pPimSituacaoId: $("#ddlStatus").val(),
pPimAlmoxarifado: $("#ddlAlmoxarifado").val(),
pPimAprovadorUsuarioId: $("#ddlAprovador").val(),
pPimSolicitanteLogin: $("#txbSolicitanteMatr").val(),
pItem: itens,
pOrcamento: orcamentos
};
$.ajax({
url: "/Pim/Pim/Elaborar",
type: 'POST',
data: param,
beforeSend: function () {
adicionarLoadingTela();
$("#btnToTop").trigger("click");
}
}).done(function (retorno) {
if ("OK" == retorno.Mensagem) {
$("#txbPimCodigo").val(retorno.Retorno.Id);
fileUpload(retorno.Retorno.Id);
exibirMensagem({ Tipo: "S", Mensagem: "PIM " + retorno.Retorno.Id + " foi gerado com sucesso." });
} else {
exibirMensagem({ Tipo: "A", Mensagem: retorno.Mensagem });
}
}).always(function () {
removerLoadingTela();
});
});
}
else {
exibirMensagem({Tipo: "A", Mensagem: "Insira pelo menos um item antes de gravar."})
}
}
});
function fileUpload(myPimId) {
if (_arquivosArray.length > 0) {
if (window.FormData !== undefined) {
var data = new FormData();
var formData = new FormData();
for (var i = 0, len = _arquivosArray.length; i < len; i++) {
formData.append('files', _arquivosArray[i]._arquivo);
}
var _url = '/Pim/Pim/UploadArquivo?pPimId=' + myPimId;
$.ajax({
type: 'POST',
url: _url,
data: formData,
processData: false,
contentType: false,
async: false
}).done(function (result) {
});
}
}
}
function anexoPim(pFornecedor, pValor, pOpcaoTecnica, pArquivo) {
this._fornecedor = pFornecedor;
this._valor = pValor;
this._opcaoTecnica = pOpcaoTecnica;
this._arquivo = pArquivo;
}
function obterEstabelecimentoEms() {
$.ajax({
url: "/ATPGTO/AP/ObterDadosUsuario"
}).done(function (resultUsuario) {
$.ajax({
url: '/Pim/Estabelecimento/ObterEstabelecimentoEms',
beforeSend: function () {
adicionarLoading('ddlEstabelecimento');
adicionarLoading('ddlItemEstabDestino');
}
}).done(function (resultEstab) {
carregarDropDown(resultEstab, 'ddlEstabelecimento', 'Sigla', 'Sigla');
carregarDropDown(resultEstab, 'ddlItemEstabDestino', 'Sigla', 'Sigla');
removerLoading('ddlEstabelecimento');
removerLoading('ddlItemEstabDestino');
$("#ddlEstabelecimento").val(resultUsuario.Funcionario.Secao.Divisao.Estabelecimento.Sigla).selectpicker('refresh');
$("#ddlItemEstabDestino").val(resultUsuario.Funcionario.Secao.Divisao.Estabelecimento.Sigla).selectpicker('refresh');
obterUfElaboradora(resultUsuario.Funcionario.CentroCusto.Id);
obterEstabelecimentoElaborador();
});
});
}
function listarHistoricoUltimasCompras() {
try {
if ($("#txbItemCodigo").val() == "" || $("#txbItemDestino").val() == "") return;
var param = {
pEstabelecimentoSigla: $("#ddlItemEstabDestino").val(),
pDestinoId: $("#txbItemDestino").val(),
pItemId : $("#txbItemCodigo").val()
};
$.ajax({
url: "/Pim/Destino/ListarHistoricoUltimasCompras",
data: param
}).done(function (historicos) {
historicos.length > 0 ? $("#tbHistoricoUltimasCompras").show() : $("#tbHistoricoUltimasCompras").hide();
$.each(historicos, function (i) {
$('#tbHistoricoUltimasCompras tbody').append($('<tr style="cursor:pointer"></tr>')
.append($("<td></td>").text(this.Pim.Id))
.append($("<td></td>").text(moment(this.Ordem.DataImplantacao).format("DD/MM/YYYY")))
.append($("<td></td>").text(this.Item.Id))
.append($("<td></td>").text(this.Item.Descricao))
.append($("<td></td>").text(this.QtdeAquisicao))
.append($("<td></td>").text(this.OrdemDeServico))
);
});
});
} catch (e) {
exibirMensagem({ Tipo: "E", Mensagem: e.message });
}
}
function obterObjetivos() {
$.ajax({
url: "/Pim/Objetivo/Listar",
beforeSend: function () {
adicionarLoading('ddlObjetivo');
}
}).done(function (result) {
carregarDropDown(result, "ddlObjetivo", 'Id', 'Descricao', false, { "": 'Selecione um objetivo...' }, "0");
removerLoading('ddlObjetivo');
});
}
$(function () {
$("#formPim").validate({
rules:
{
ddlAlmoxarifado: { required: true },
ddlTipo: { required: true },
ddlObjetivo: { required: true },
txbPrazo: { required: true },
ddlUfElaboradora: { required: true },
ddlDestino: { required: true },
txbResumo: { required: true },
ddlPlanejado: { required: true },
txbJustificativa: { required: true },
txbSolicitanteMatr: {required: true }
},
messages:
{
ddlAlmoxarifado: { required: "O campo Almoxarifado deve ser selecionado" },
ddlTipo: { required: "O campo Tipo deve ser selecionado" },
ddlObjetivo: { required: "O campo Objetivo deve ser selecionado" },
txbPrazo: { required: "O campo Prazo deve ser selecionado" },
ddlUfElaboradora: { required: "O campo UF Elaboradora deve ser selecionada" },
ddlDestino: { required: "O campo Destino deve ser selecionado" },
txbResumo: { required: "O campo Resumo deve ser preenchido" },
ddlPlanejado: { required: "O campo Planejado deve ser selecionado" },
txbJustificativa: { required: "O campo Justificativa deve ser preenchido" },
txbSolicitanteMatr: { required: "O campo Matr. Solicitante deve ser preenchido"}
}
});
obterEstabelecimentoEms();
obterObjetivos();
$("#txbItemQtde").mask('000.000.000.000.000,00', { reverse: true });
$('#txbPimCodigo').val('0');
$("#txbItemPatrimonio").val('0');
$('#txbPimCodigoOrigem').val('0');
datePckr("#txbPrazo");
$("#txbAnexoValor").mask('000.000.000.000.000,00', { reverse: true });
});
$('#ddlEstabelecimento').on('change', function () {
$.ajax({
url: "/ATPGTO/AP/ObterDadosUsuario"
}).done(function (resultUsuario) {
obterDestino($('#ddlEstabelecimento').val(), resultUsuario.Id);
$("#ddlItemEstabDestino").val($('#ddlEstabelecimento').val()).selectpicker('refresh');
limparItem();
$("#tbItem tbody").empty();
$("#tbItem").hide();
$("#txbItemDestino").val('');
});
});
$('#ddlDestino').on('change', function () {
$("#txbItemDestino").val($('#ddlDestino').val());
listarAprovador();
});
$('#txbProjetoCodigo').on('change', function () {
if ($('#txbProjetoCodigo').val() > 0) {
if ($("#ddlDestino").val() !== "") {
var param = {
pEstabelecimento: $('#ddlEstabelecimento').val(),
pCentroCusto: $('#ddlDestino').val(),
pProjeto: $('#txbProjetoCodigo').val()
};
$.ajax({
url: '/Pim/Projeto/ObterProjetoPorEstabCcustoCodigo',
data: param
}).done(function (result) {
if (result.Mensagem === "OK") {
$('#txbProjetoDescricao').val(result.Retorno.Descricao);
$('#txbProjetoValorPlanejado').val(result.Retorno.ValPrevisto.formatMoney(2, ',', '.'));
$('#txbProjetoSaldo').val(result.Retorno.ValorLiberadoGastar.formatMoney(2, ',', '.'));
$('#lblProjetoClassificacao').val(result.Retorno.Classificacao);
}
else {
var mensagem = {
Tipo: 'A',
Mensagem: result.Mensagem
};
exibirMensagem(mensagem, 100);
limparProjeto();
}
});
}
else {
var mensagem = {
Tipo: "E",
Mensagem: "Um Destino deve ser selecionado."
};
exibirMensagem(mensagem, 100);
limparProjeto();
}
}
else {
limparProjeto();
}
});
$('#btnAnexoInserir').on('click', function () {
_arquivo = $("#upload").get(0).files;
if (_arquivo.length > 0) {
if (isTamanhoValido(_arquivo[0])) {
if (isTipoValido(_arquivo[0])) {
var fornecedor = $("#txbAnexoFornecedor").val();
var valor = $("#txbAnexoValor").val();
var opcaoTecnica = $("#ddlOpTecnica").val();
var anexo = new anexoPim(fornecedor, valor, opcaoTecnica, _arquivo[0]);
_arquivosArray.push(anexo);
montarTableAnexo();
limparFormAnexo();
}
else {
exibirMensagem({ Tipo: "A", Mensagem: "A extensão do arquivo não é permitida." });
}
} else {
exibirMensagem({ Tipo: "A", Mensagem: "Tamanho do arquivo é superior ao permitido." });
}
} else {
exibirMensagem({ Tipo: "A", Mensagem: "Selecione um arquivo antes de inserir." });
}
});
function contains(nomeDoArquivo, array) {
for (var i = 0; i < array.length; i++) {
if (array[i]._arquivo.name == nomeDoArquivo) {
array.splice(i, 1);
}
}
}
"I have a screen that needs to be completely filled so that I invoke a field fill function.".... That doesn’t make much sense, do you have a form? How so the screen be filled? and what does it have to do with the functions? put some code to make your question clearer. has the
$(document).ready
, everything inside is only called after the page is fully loaded, including thefunctions
outside the$(document).ready
– Vinicius
This is Vinicius, I added the code. In this case, this screen is a canvas that the user uses to create a purchase order. But it also serves as an edit screen, where the user queries for this request, on a query screen, and is redirected to this screen to be able to change information. So I have to fill out the screen with all the information necessary for it to make screen changes.
– Anderson Apdo de Souza
put the functions to be executed before the
$(document).ready
2nd: $("#btnGravar"). click(Function().... and all clicks will only be called when you click the button, it should be within $(Document).ready. 3º If this snippet of the first example if(pPimId) {$. ajax({.... , it should only be called after the execution of all the Function you put in the second example, it has to be at the end, just off the $(Document). ready.– Vinicius