Exemple #1
0
        public static void Gravar(List <TRegistro_AbastVeiculo> lista,
                                  CamadaDados.Financeiro.Duplicata.TRegistro_LanDuplicata rDup,
                                  BancoDados.TObjetoBanco banco)
        {
            bool             st_transacao = false;
            TCD_AbastVeiculo qtb_abast    = new TCD_AbastVeiculo();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_abast.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_abast.Banco_Dados = banco;
                }
                //Gravar duplicata
                if (rDup != null)
                {
                    TCN_LanDuplicata.GravarDuplicata(rDup, false, qtb_abast.Banco_Dados);
                }
                //Gravar abastecidas
                lista.ForEach(x =>
                {
                    Gravar(x, qtb_abast.Banco_Dados);
                    //Amarrar abast x duplicata
                    if (x.Tp_pagamento.Trim().ToUpper().Equals("E"))
                    {
                        TCN_Abast_X_Duplicata.Gravar(new TRegistro_Abast_X_Duplicata
                        {
                            Id_abastecimento = x.Id_abastecimento,
                            Cd_empresa       = rDup.Cd_empresa,
                            Nr_lancto        = rDup.Nr_lancto
                        }, qtb_abast.Banco_Dados);
                    }
                });
                if (st_transacao)
                {
                    qtb_abast.Banco_Dados.Commit_Tran();
                }
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_abast.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro gravar abastecimentos: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_abast.deletarBanco_Dados();
                }
            }
        }
Exemple #2
0
        public static string ProcessarMudanca(TRegistro_LanMudanca val, BancoDados.TObjetoBanco banco)
        {
            bool           st_transacao = false;
            TCD_LanMudanca qtb_mud      = new TCD_LanMudanca();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_mud.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_mud.Banco_Dados = banco;
                }
                //Gravar Duplicata
                if (val.lDup.Count > 0)
                {
                    TCN_LanDuplicata.GravarDuplicata(val.lDup, false, qtb_mud.Banco_Dados);
                    val.Nr_lancto = val.lDup[0].Nr_lancto;
                }
                //Gravar lançamento almoxarifado
                val.lMaterialMud.ForEach(p =>
                {
                    //Buscar Almoxarifado
                    CamadaDados.Almoxarifado.TList_CadAlmoxarifado lAlmox =
                        new CamadaDados.Almoxarifado.TCD_CadAlmoxarifado().Select(
                            new Utils.TpBusca[]
                    {
                        new Utils.TpBusca()
                        {
                            vNM_Campo = string.Empty,
                            vOperador = "exists",
                            vVL_Busca = "(select 1 from tb_amx_almox_x_empresa x " +
                                        "where x.id_almox = a.id_almox " +
                                        "and x.cd_empresa = '" + val.Cd_empresa.Trim() + "')"
                        }
                    }, 1, string.Empty);
                    if (lAlmox.Count == 0)
                    {
                        throw new Exception("Não existe configuração de almoxarifado para a empresa!");
                    }
                    //Criar registro movimentação
                    CamadaDados.Almoxarifado.TRegistro_Movimentacao rMov =
                        new CamadaDados.Almoxarifado.TRegistro_Movimentacao();
                    rMov.Ds_observacao = "PRODUTO RETIRADO PELO MÓDULO MUDANÇA";
                    rMov.Cd_empresa    = val.Cd_empresa;
                    rMov.Id_almoxstr   = lAlmox[0].Id_almoxString;
                    rMov.Cd_produto    = p.Cd_produto;
                    rMov.Quantidade    = p.Quantidade;
                    rMov.Vl_unitario   = CamadaNegocio.Almoxarifado.TCN_SaldoAlmoxarifado.Vl_Custo_Almox_Prod(val.Cd_empresa,
                                                                                                              lAlmox[0].Id_almoxString,
                                                                                                              p.Cd_produto,
                                                                                                              qtb_mud.Banco_Dados);
                    rMov.Tp_movimento    = "S";
                    rMov.LoginAlmoxarife = Utils.Parametros.pubLogin;
                    rMov.Dt_movimento    = CamadaDados.UtilData.Data_Servidor();
                    rMov.St_registro     = "A";
                    //Gravar Movimentação
                    CamadaNegocio.Almoxarifado.TCN_Movimentacao.Gravar(rMov, qtb_mud.Banco_Dados);
                    //Gravar Material mudança
                    p.Id_movimento = rMov.Id_movimento;
                    TCN_MaterialMud.Gravar(p, qtb_mud.Banco_Dados);
                });
                val.St_registro = "4";//Processada
                //Gravar processamento mudança
                qtb_mud.Gravar(val);
                if (st_transacao)
                {
                    qtb_mud.Banco_Dados.Commit_Tran();
                }
                return("OK");
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_mud.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro Gravar registro: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_mud.deletarBanco_Dados();
                }
            }
        }
Exemple #3
0
        private void LancarFinanceiro()
        {
            if (bsEmpreendimento.Current != null)
            {
                if ((bsEmpreendimento.Current as CamadaDados.Financeiro.Empreendimento.TRegistro_Empreendimento).St_registro.Trim().ToUpper().Equals("A"))
                {
                    using (TFLanDuplicata fDuplicata = new TFLanDuplicata())
                    {
                        fDuplicata.vCd_empresa = (bsEmpreendimento.Current as CamadaDados.Financeiro.Empreendimento.TRegistro_Empreendimento).Cd_empresa;
                        fDuplicata.vNm_empresa = (bsEmpreendimento.Current as CamadaDados.Financeiro.Empreendimento.TRegistro_Empreendimento).Nm_empresa;

                        fDuplicata.cd_empresa.Enabled = false;
                        fDuplicata.bb_empresa.Enabled = false;
                        fDuplicata.St_empreendimento  = true;
                        if (fDuplicata.ShowDialog() == DialogResult.OK)
                        {
                            //Ratear Centro de Custo
                            if (CamadaNegocio.ConfigGer.TCN_CadParamGer.BuscaVL_Bool("CRESULTADO_PROVISAO",
                                                                                     (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Cd_empresa,
                                                                                     null).Trim().ToUpper().Equals("S"))
                            {
                                using (TFRateioCResultado fRateio = new TFRateioCResultado())
                                {
                                    fRateio.vVl_Documento = (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Vl_documento_padrao;
                                    //fDupCCusto.Id_empreendimento = (bsEmpreendimento.Current as CamadaDados.Financeiro.Empreendimento.TRegistro_Empreendimento).Id_empreendimento.Value.ToString();
                                    fRateio.Tp_mov = (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Tp_mov;
                                    fRateio.ShowDialog();
                                    (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).lCustoLancto    = fRateio.lCResultado;
                                    (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).lCustoLanctoDel = fRateio.lCResultadoDel;
                                }
                            }
                            try
                            {
                                string ret = TCN_LanDuplicata.GravarDuplicata((fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata), false, null);
                                if (ret.Trim() != "")
                                {
                                    string lan = CamadaDados.TDataQuery.getPubVariavel(ret, "@P_NR_LANCTO");

                                    MessageBox.Show("Lançamento Financeiro nr:" + lan + " Gravado com Sucesso!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);

                                    CamadaDados.Financeiro.Bloqueto.blListaTitulo lBloqueto =
                                        CamadaNegocio.Financeiro.Bloqueto.TCN_Titulo.Buscar((fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Cd_empresa,
                                                                                            (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Nr_lancto,
                                                                                            decimal.Zero,
                                                                                            decimal.Zero,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            decimal.Zero,
                                                                                            decimal.Zero,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            string.Empty,
                                                                                            false,
                                                                                            0,
                                                                                            null);
                                    if (lBloqueto.Count > 0)
                                    {
                                        //Chamar tela de impressao para o bloqueto
                                        using (TFGerenciadorImpressao fImp = new TFGerenciadorImpressao())
                                        {
                                            fImp.St_enabled_enviaremail = true;
                                            fImp.pCd_clifor             = (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Cd_clifor;
                                            fImp.pMensagem = "BLOQUETOS DO DOCUMENTO Nº" + (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Nr_docto;
                                            if ((fImp.ShowDialog() == DialogResult.OK) || (fImp.pSt_enviaremail))
                                            {
                                                TCN_LayoutBloqueto.Imprime_Bloqueto(false,
                                                                                    lBloqueto,
                                                                                    fImp.pSt_imprimir,
                                                                                    fImp.pSt_visualizar,
                                                                                    fImp.pSt_enviaremail,
                                                                                    fImp.pSt_exportPdf,
                                                                                    fImp.Path_exportPdf,
                                                                                    fImp.pDestinatarios,
                                                                                    "BLOQUETO(S) DO DOCUMENTO Nº " + (fDuplicata.dsDuplicata.Current as TRegistro_LanDuplicata).Nr_docto,
                                                                                    fImp.pDs_mensagem,
                                                                                    false);
                                            }
                                        }
                                    }
                                }
                            }
                            catch (Exception ex)
                            {
                                MessageBox.Show(ex.Message.Trim());
                            }
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Não é permitido lançar financeiro para empreendimento com status diferente <ATIVO>.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
            else
            {
                MessageBox.Show("Necessario selecionar empreendimento para lançar financeiro.", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }