public override void OnBeforeComboSelect(string FormUID, ref ItemEvent pVal, out bool BubbleEvent) { if (pVal.ItemUID == _botaoComboCopiar.ItemUID) { BubbleEvent = false; using (var formCOM = new FormCOM(FormUID)) { var form = formCOM.Form; if (form.Mode == BoFormMode.fm_OK_MODE) { using (var dbdtsCOM = new DBDatasourceCOM(form, MainDbDataSource)) { var dbdts = dbdtsCOM.Dbdts; var fornecedor = _codigoPN.GetValorDBDatasource <string>(dbdts); var numContratoFinal = _numeroDoContrato.GetValorDBDatasource <string>(dbdts); var transportadora = _transportadora.GetValorDBDatasource <string>(dbdts); var codigoItem = _codigoItem.GetValorDBDatasource <string>(dbdts); var deposito = _deposito.GetValorDBDatasource <string>(dbdts); var utilizacao = _utilizacao.GetValorDBDatasource <string>(dbdts); var safra = _safra.GetValorDBDatasource <string>(dbdts); var embalagem = _embalagem.GetValorDBDatasource <string>(dbdts); var quantidade = _saldoDePeso.GetValorDBDatasource <double>(dbdts); var filial = GetFilial(_deposito.GetValorDBDatasource <string>(dbdts)); var precoUnitario = _valorFaturado.GetValorDBDatasource <double>(dbdts); var objPedidoCompra = new FormPedidoCompra(); var formPedidoCompra = objPedidoCompra.Abrir(); objPedidoCompra.PreencherPedido(formPedidoCompra, new PedidoCompraParams() { NumContratoFinal = numContratoFinal, Fornecedor = fornecedor, Item = codigoItem, Utilizacao = utilizacao, Transportadora = transportadora, Embalagem = embalagem, Deposito = deposito, Quantidade = quantidade, PrecoUnitario = precoUnitario, Filial = filial }); } } else { Dialogs.PopupError("Salve o Contrato antes de criar um novo Documento."); } } } else { base.OnAfterComboSelect(FormUID, ref pVal, out BubbleEvent); } }
private static void DeclararEventos() { var eventFilters = new EventFilters(); eventFilters.Add(BoEventTypes.et_MENU_CLICK); try { #region :: Forms Cadastro Básico var formGrupoDeItens = new FormGrupoDeItens(); var formConfiguracaoPeneira = new FormConfiguracaoPeneira(); var formCertificado = new FormCertificado(); var formMetodoFinanceiro = new FormMetodoFinanceiro(); var formModalidade = new FormModalidade(); var formSafra = new FormSafra(); var formTipoOperacao = new FormTipoOperacao(); var formUnidadeComercial = new FormUnidadeComercial(); var formParticipante = new FormParticipante(); var formsCadastroBasico = new List <SAPHelper.Form>() { formGrupoDeItens, formConfiguracaoPeneira, formCertificado, formMetodoFinanceiro, formModalidade, formSafra, formTipoOperacao, formUnidadeComercial, formParticipante }; #endregion #region :: Forms Detalhe de Contrato var formPreContrato = new FormPreContrato(); var formContratoFinal = new FormContratoFinal(); var formPreContratoAberturaPorPeneira = new FormPreContratoAberturaPorPeneira(); var formContratoFinalAberturaPorPeneira = new FormContratoFinalAberturaPorPeneira(); var formPreContratoDetalheCertificado = new FormPreContratoDetalheCertificado(); var formContratoFinalDetalheCertificado = new FormContratoFinalDetalheCertificado(); var formPreContratoComissoes = new FormPreContratoComissoes(); var formContratoFinalComissoes = new FormContratoFinalComissoes(); var formsDetalheContrato = new List <SAPHelper.Form>() { formPreContratoAberturaPorPeneira, formContratoFinalAberturaPorPeneira, formPreContratoDetalheCertificado, formContratoFinalDetalheCertificado, formPreContratoComissoes, formContratoFinalComissoes }; #endregion #region :: Form SAP var formUsuarios = new FormUsuarios(); var formPedidoCompra = new FormPedidoCompra(); var formsPadraoSAP = new List <SAPHelper.Form>() { formUsuarios, formPedidoCompra }; #endregion #region :: Grupos de Forms var formsVisible = new List <SAPHelper.Form>() { formPreContrato, formContratoFinal }; formsVisible.AddRange(formsCadastroBasico); formsVisible.AddRange(formsDetalheContrato); #endregion FormEvents.DeclararEventos(eventFilters, new List <MapEventsToForms>() { new MapEventsToForms(BoEventTypes.et_FORM_VISIBLE, formsVisible), new MapEventsToForms(BoEventTypes.et_FORM_LOAD, formsPadraoSAP), new MapEventsToForms(BoEventTypes.et_COMBO_SELECT, new List <SAPHelper.Form>() { formPreContrato, formContratoFinal, formPreContratoComissoes, formContratoFinalComissoes }), new MapEventsToForms(BoEventTypes.et_VALIDATE, new List <SAPHelper.Form>() { formPreContrato, formContratoFinal }), new MapEventsToForms(BoEventTypes.et_CHOOSE_FROM_LIST, new List <SAPHelper.Form>() { formPreContrato, formPreContratoAberturaPorPeneira, formContratoFinal, formContratoFinalAberturaPorPeneira }), new MapEventsToForms(BoEventTypes.et_FORM_DATA_ADD, new List <SAPHelper.Form>() { formPreContrato, formContratoFinal, formCertificado, formMetodoFinanceiro, formModalidade, formSafra, formTipoOperacao, formUnidadeComercial, formParticipante }), new MapEventsToForms(BoEventTypes.et_FORM_DATA_UPDATE, new List <SAPHelper.Form>() { formPreContrato, formContratoFinal, formCertificado, formMetodoFinanceiro, formModalidade, formSafra, formTipoOperacao, formUnidadeComercial, formParticipante }), new MapEventsToForms(BoEventTypes.et_FORM_DATA_LOAD, new List <SAPHelper.Form>() { formPreContrato, formContratoFinal }), new MapEventsToForms(BoEventTypes.et_FORM_CLOSE, new List <SAPHelper.Form>() { formPreContratoDetalheCertificado, formPreContratoComissoes, formContratoFinalDetalheCertificado, formContratoFinalComissoes, formContratoFinal }), new MapEventsToForms(BoEventTypes.et_ITEM_PRESSED, new List <SAPHelper.Form>() { formPreContrato, formContratoFinal, formPreContratoAberturaPorPeneira, formPreContratoDetalheCertificado, formPreContratoComissoes, formContratoFinalAberturaPorPeneira, formContratoFinalDetalheCertificado, formContratoFinalComissoes, formGrupoDeItens, formConfiguracaoPeneira, formPedidoCompra }), new MapEventsToForms(BoEventTypes.et_MATRIX_LINK_PRESSED, new List <SAPHelper.Form>() { formPreContrato, formContratoFinal }), new MapEventsToForms(BoEventTypes.et_DOUBLE_CLICK, new List <SAPHelper.Form>() { formPreContrato, formContratoFinal }), }); var formsAdicionarNovo = new List <SAPHelper.Form>() { formPreContrato, formContratoFinal }; formsAdicionarNovo.AddRange(formsCadastroBasico); FormEvents.DeclararEventosInternos(EventosInternos.AdicionarNovo, formsAdicionarNovo); FormEvents.DeclararEventosInternos(EventosInternos.Pesquisar, new List <SAPHelper.Form>() { formPreContrato, formContratoFinal }); FormEvents.DeclararEventosInternos(EventosInternos.Duplicar, formPedidoCompra); } catch (Exception e) { Dialogs.PopupError("Erro ao declarar eventos de formulário.\nErro: " + e.Message); } try { Global.SBOApplication.SetFilter(eventFilters); } catch (Exception e) { Dialogs.PopupError("Erro ao setar eventos declarados da aplicação.\nErro: " + e.Message); } Global.SBOApplication.AppEvent += AppEvent; Global.SBOApplication.ItemEvent += FormEvents.ItemEvent; Global.SBOApplication.FormDataEvent += FormEvents.FormDataEvent; Global.SBOApplication.MenuEvent += Menu.MenuEvent; }