コード例 #1
0
        /// <summary>
        /// Grava as condições de pagamento da solicitação
        /// </summary>
        /// <param name="p_NumSolic">Número da solicitação</param>
        /// <param name="p_RevSolic">Número da revisão da solicitação</param>
        /// <param name="p_SeqSolic">Sequência da condição de pagamento</param>
        /// <param name="p_CodEvento">Código do Evento de Pagamento</param>
        /// <param name="p_Percentual">Percentual correspondente</param>
        public void setPagamentosSolic(string p_NumSolic, string p_RevSolic, string p_SeqSolic, string p_CodEvento, string p_Percentual)
        {
            ManipulaBD mBD = new ManipulaBD();

            mBD.openConnection();
            try
            {
                string sql = "INSERT INTO [DOM_SOLIC_ORC_COND_PGTO] ";
                sql += "([NUMERO_SOLICITACAO], ";
                sql += "[REVISAO_SOLICITACAO], ";
                sql += "[SEQUENCIA], ";
                sql += "[COD_EVENTO_PAGTO], ";
                sql += "[PERC_CORRESPONDENTE]) ";
                sql += "VALUES ";
                sql += "(" + p_NumSolic + ", ";
                sql += "'" + p_RevSolic + "', ";
                sql += "" + p_SeqSolic + ", ";
                sql += "" + p_CodEvento + ", ";
                sql += "" + p_Percentual + ")";
                mBD.insertSOF(sql);
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                mBD.closeConnection();
            }
        }
コード例 #2
0
        /// <summary>
        /// Edita o valor de uma condição de pagamento da solicitação de orçamento
        /// </summary>
        /// <param name="p_percent_corresp">Percentual de pagamento</param>
        /// <param name="p_num_solic">N° da solicitação</param>
        /// <param name="p_revisao">N° da revisão (geralmente 0)</param>
        /// <param name="p_sequencia">Sequência da condição de pagamento</param>
        public void atualizaCondPagamento(string p_percent_corresp, string p_num_solic, string p_revisao, string p_sequencia)
        {
            ManipulaBD mBD = new ManipulaBD();

            mBD.openConnection();
            int retorno;

            try
            {
                string sql = "UPDATE DOM_SOLIC_ORC_COND_PGTO ";
                sql    += "SET [PERC_CORRESPONDENTE] = " + p_percent_corresp + " ";
                sql    += "WHERE [NUMERO_SOLICITACAO] = " + p_num_solic;
                sql    += "AND [REVISAO_SOLICITACAO] = '" + p_revisao + "'";
                sql    += "AND [SEQUENCIA] = " + p_sequencia;
                retorno = mBD.insertSOF(sql);
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                mBD.closeConnection();
            }
        }
コード例 #3
0
        /// <summary>
        /// Atualiza a lista de contatos do representante
        /// </summary>
        /// <param name="p_empr_logada">Empresa logada</param>
        /// <param name="p_cod_representante">Código do representante</param>
        public void atualizaContatos(string p_empr_logada, string p_cod_representante)
        {
            int retorno = 0;

            //Chama a classe que de conexão com o SQL Server
            ManipulaBD mBD = new ManipulaBD();

            try
            {
                //Busca a lista de clientes no WebService
                Representantes.Seguranca login = new Representantes.Seguranca(); //Login = Usuário e Senha para acessar o método do WebService
                login.Usuario = "Fockink";
                login.Senha   = "fockink147@1!";
                Representantes.RepresentantesSoapClient representante = new Representantes.RepresentantesSoapClient();
                DataSet dsRetorno = new DataSet();
                dsRetorno = representante.listaContatosClientesRepresentante(login, p_empr_logada, p_cod_representante);
                if (dsRetorno != null && dsRetorno.Tables.Count > 0)
                {
                    //Chama o método para deletar os registros da tabela CLIENTE_REPRESENTANTE
                    retorno = mBD.deleteSOF("DELETE FROM DOM_CONTATO WHERE EMPR_CODIGO=@empr_codigo", p_empr_logada, p_cod_representante);
                    //     MessageBox.Show("Retorno Contato: " + retorno);
                    foreach (DataRow dr in dsRetorno.Tables[0].Rows)
                    {
                        string sql = "INSERT INTO [DOM_CONTATO] ";
                        sql += "([CODIGO], [DPES_CODIGO], [EMPR_CODIGO], [NOME], [SETOR], [CARGO], [DDD], [TELEFONE], [TELEFONE_RAMAL], [CELULAR_DDD], [CELULAR], [EMAIL], [ATIVO]) ";
                        sql += "VALUES ('" + dr["CODIGO"].ToString() + "', '" + dr["DPES_CODIGO"].ToString() + "', '" + dr["EMPR_CODIGO"].ToString() + "', '" + dr["NOME"].ToString().Replace("'", "''") + "', '" + dr["SETOR"].ToString() + "', '" + dr["CARGO"].ToString() + "', '" + dr["DDD"].ToString() + "', '" + dr["TELEFONE"].ToString() + "', '" + dr["TELEFONE_RAMAL"].ToString() + "', '" + dr["CELULAR_DDD"].ToString() + "', '" + dr["CELULAR"].ToString() + "', '" + dr["EMAIL"].ToString() + "', '" + dr["ATIVO"].ToString() + "')";
                        //MessageBox.Show(sql);
                        retorno = mBD.insertSOF(sql);
                    }
                    MessageBox.Show("Rows Contato: " + dsRetorno.Tables[0].Rows.Count);
                }
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
            finally
            {
                mBD.closeConnection();
            }
        }
コード例 #4
0
        /// <summary>
        /// Atualiza a lista de clientes do representante
        /// </summary>
        /// <param name="p_empr_codigo">Empresa logada</param>
        /// <param name="p_cod_representante">Código do representante</param>
        public void atualizaClientes(string p_empr_codigo, string p_cod_representante)
        {
            int retorno = 0;
            //Chama a classe que de conexão com o SQL Server
            ManipulaBD mBD = new ManipulaBD();

            try
            {
                //Busca a lista de clientes no WebService
                Representantes.Seguranca login = new Representantes.Seguranca(); //Login = Usuário e Senha para acessar o método do WebService
                login.Usuario = "Fockink";
                login.Senha   = "fockink147@1!";
                Representantes.RepresentantesSoapClient clientes = new Representantes.RepresentantesSoapClient();
                DataSet dsRetorno = new DataSet();
                dsRetorno = clientes.listaClientesRepresentante(login, p_empr_codigo, p_cod_representante); //Método que retorna um DataSet com os clientes do representante

                if (dsRetorno != null && dsRetorno.Tables.Count > 0)
                {
                    retorno = mBD.deleteSOF("DELETE FROM DOM_CLIENTE WHERE COD_REPRESENTANTE=@cod_representante AND EMPR_CODIGO_REPRES=@empr_codigo", p_empr_codigo, p_cod_representante);
                    //     MessageBox.Show("Retorno Cliente: " + retorno);
                    foreach (DataRow dr in dsRetorno.Tables[0].Rows)
                    {
                        string sql = "INSERT INTO [DOM_CLIENTE] ";
                        sql    += "([COD_REPRESENTANTE], [EMPR_CODIGO_REPRES], [COD_CLIENTE], [RAZAO_SOCIAL], [CGC_CPF], [INSCRICAO_ESTADUAL], [CIDADE], [SIGLA_UF], [PAIS]) ";
                        sql    += " VALUES ('" + dr["COD_REPRESENTANTE"].ToString() + "', '" + dr["EMPR_CODIGO_REPRES"].ToString() + "', '" + dr["COD_CLIENTE"].ToString() + "', '" + dr["RAZAO_SOCIAL"].ToString().Replace("'", "''") + "', '" + dr["CGC_CPF"].ToString() + "', '" + dr["INSCRICAO_ESTADUAL"].ToString() + "', '" + dr["CIDADE"].ToString().Replace("'", "''") + "', '" + dr["SIGLA_UF"].ToString() + "', '" + dr["PAIS"].ToString() + "' ) ";
                        retorno = mBD.insertSOF(sql);
                    }
                    //     MessageBox.Show("Rows Cliente: " + dsRetorno.Tables[0].Rows.Count);
                }
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
            finally
            {
                mBD.closeConnection();
            }
        }
コード例 #5
0
        /// <summary>
        /// Método que atualiza a tabela DOMOBR_REF_CODES
        /// </summary>
        public void atualizaDomRefCodes()
        {
            int retorno = 0;
            //Chama a classe que de conexão com o SQL Server
            ManipulaBD mBD = new ManipulaBD();

            try
            {
                //Busca a lista de clientes no WebService
                Representantes.Seguranca login = new Representantes.Seguranca(); //Login = Usuário e Senha para acessar o método do WebService
                login.Usuario = "Fockink";
                login.Senha   = "fockink147@1!";
                Representantes.RepresentantesSoapClient RefCodes = new Representantes.RepresentantesSoapClient();
                DataSet dsRetorno = new DataSet();
                dsRetorno = RefCodes.listaDomobrRefCodes(login, "FORMA_PAGTO");

                if (dsRetorno != null && dsRetorno.Tables.Count > 0)
                {
                    retorno = mBD.deleteSOF("DELETE FROM [DOMOBR_REF_CODES]");
                    foreach (DataRow dr in dsRetorno.Tables[0].Rows)
                    {
                        string sql = "INSERT INTO [DOMOBR_REF_CODES] ";
                        sql    += "([VALOR], [DESCRICAO], [RV_DOMAIN]) ";
                        sql    += " VALUES ('" + dr["VALOR"].ToString() + "', ";
                        sql    += " '" + dr["DESCRICAO"].ToString() + "', ";
                        sql    += " '" + dr["RV_DOMAIN"].ToString() + "')  ";
                        retorno = mBD.insertSOF(sql);
                    }
                }
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
            finally
            {
                mBD.closeConnection();
            }
        }
コード例 #6
0
        /// <summary>
        /// Atualiza a tabela DOM_TIPO_NEGOCIO p/ lista do cabeçalho da solicitação.
        /// </summary>
        public void atualizaTipoNegocio()
        {
            int retorno = 0;
            //Chama a classe que de conexão com o SQL Server
            ManipulaBD mBD = new ManipulaBD();

            try
            {
                //Busca a lista de clientes no WebService
                Representantes.Seguranca login = new Representantes.Seguranca(); //Login = Usuário e Senha para acessar o método do WebService
                login.Usuario = "Fockink";
                login.Senha   = "fockink147@1!";
                Representantes.RepresentantesSoapClient tipoNegocio = new Representantes.RepresentantesSoapClient();
                DataSet dsRetorno = new DataSet();
                dsRetorno = tipoNegocio.listaTipoNegocio(login);

                if (dsRetorno != null && dsRetorno.Tables.Count > 0)
                {
                    retorno = mBD.deleteSOF("DELETE FROM DOM_TIPO_NEGOCIO");
                    foreach (DataRow dr in dsRetorno.Tables[0].Rows)
                    {
                        string sql = "INSERT INTO [DOM_TIPO_NEGOCIO] ";
                        sql    += "([CODIGO], [DESCRICAO]) ";
                        sql    += " VALUES (" + dr["CODIGO"].ToString() + ", '" + dr["DESCRICAO"].ToString() + "') ";
                        retorno = mBD.insertSOF(sql);
                    }
                }
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
            finally
            {
                mBD.closeConnection();
            }
        }
コード例 #7
0
        /// <summary>
        /// Atualiza a tabela DOM_EVENTO_PAGAMENTO
        /// </summary>
        public void atualizaEventoPagamento()
        {
            int retorno = 0;
            //Chama a classe que de conexão com o SQL Server
            ManipulaBD mBD = new ManipulaBD();

            try
            {
                Representantes.Seguranca login = new Representantes.Seguranca();
                login.Usuario = "Fockink";
                login.Senha   = "fockink147@1!";
                Representantes.RepresentantesSoapClient eventoPagamento = new Representantes.RepresentantesSoapClient();
                DataSet dsRetorno = new DataSet();
                dsRetorno = eventoPagamento.listaEventoPagamento(login);
                if (dsRetorno != null && dsRetorno.Tables.Count > 0)
                {
                    retorno = mBD.deleteSOF("DELETE FROM DOM_EVENTO_PAGAMENTO");
                    foreach (DataRow dr in dsRetorno.Tables[0].Rows)
                    {
                        string sql = "INSERT INTO [DOM_EVENTO_PAGAMENTO] ";
                        sql    += "([CODIGO], [DESCRICAO]) ";
                        sql    += "VALUES ";
                        sql    += " (" + dr["CODIGO"].ToString() + ", '" + dr["DESCRICAO"].ToString() + "') ";
                        retorno = mBD.insertSOF(sql);
                    }
                }
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
            finally
            {
                mBD.closeConnection();
            }
        }
コード例 #8
0
        /// <summary>
        /// Atualiza a tabela DOM_INDICADOR_NEGOCIO p/ lista do cabeçalho da solicitação.
        /// </summary>
        public void atualizaIndicadorNegocio(string p_empr_codigo)
        {
            int retorno = 0;
            //Chama a classe que de conexão com o SQL Server
            ManipulaBD mBD = new ManipulaBD();

            try
            {
                Representantes.Seguranca login = new Representantes.Seguranca(); //Login = Usuário e Senha para acessar o método do WebService
                login.Usuario = "Fockink";
                login.Senha   = "fockink147@1!";
                Representantes.RepresentantesSoapClient indicadorNegocio = new Representantes.RepresentantesSoapClient();
                DataSet dsRetorno = new DataSet();
                dsRetorno = indicadorNegocio.listaIndicadorNegocio(login, p_empr_codigo);

                if (dsRetorno != null && dsRetorno.Tables.Count > 0)
                {
                    retorno = mBD.deleteSOF("DELETE FROM DOM_INDICADOR_NEGOCIO WHERE EMPR_CODIGO = '" + p_empr_codigo + "'");
                    foreach (DataRow dr in dsRetorno.Tables[0].Rows)
                    {
                        string sql = "INSERT INTO [DOM_INDICADOR_NEGOCIO] ";
                        sql    += "([EMPR_CODIGO], [DPES_CODIGO], [RAZAO_SOCIAL], [COD_RAZAO_SOCIAL]) ";
                        sql    += " VALUES ('" + dr["EMPR_CODIGO"].ToString() + "', " + dr["DPES_CODIGO"].ToString() + ", '" + dr["RAZAO_SOCIAL"].ToString() + "', '" + dr["COD_RAZAO_SOCIAL"].ToString() + "') ";
                        retorno = mBD.insertSOF(sql);
                    }
                }
            }
            catch (Exception exc)
            {
                MessageBox.Show(exc.Message);
            }
            finally
            {
                mBD.closeConnection();
            }
        }
コード例 #9
0
        /// <summary>
        /// Realiza a gravação/alteração do registro de uma solicitação
        /// </summary>
        /// /// <param name="p_act">I - Insert U - Update</param>
        /// <param name="p_num_solic"></param>
        /// <param name="p_status_solic"></param>
        /// <param name="p_cliente"></param>
        /// <param name="p_obra"></param>
        /// <param name="p_observacao"></param>
        /// <param name="p_projeto"></param>
        /// <param name="p_cod_tecnico"></param>
        /// <param name="p_cod_comercial"></param>
        /// <param name="tipo_negocio"></param>
        /// <param name="p_finalidade"></param>
        /// <param name="p_empreendimento"></param>
        /// <param name="p_idioma"></param>
        /// <param name="p_outro_idioma"></param>
        /// <param name="p_prazo_proposta"></param>
        /// <param name="p_valor"></param>
        /// <param name="p_dt_obra"></param>
        /// <param name="p_concorrentes"></param>
        /// <param name="p_padrao_solucao"></param>
        /// <param name="p_frete"></param>
        /// <param name="p_faturamento"></param>
        /// <param name="p_venda_para"></param>
        /// <param name="p_contICMS"></param>
        /// <param name="p_incentFiscal"></param>
        /// <param name="p_incentivo"></param>
        /// <param name="p_forma_pagamento"></param>
        /// <param name="p_financiamento"></param>
        /// <param name="p_instFinanceira"></param>
        /// <param name="p_indic_negocio"></param>
        /// <param name="p_comissao_indicador"></param>
        /// <param name="p_desconto"></param>
        /// <param name="p_moeda"></param>
        public void setSolicitacao(string p_act, string p_num_solic, string p_revisao, string p_status_solic, string p_cliente, string p_obra, string p_observacao,
                                   string p_projeto, string p_cod_tecnico, string p_dpes_cod_tecnico, string p_cod_comercial, string p_dpes_cod_comercial, string p_tipo_negocio,
                                   string p_finalidade, string p_empreendimento, string p_idioma, string p_outro_idioma, string p_valor, string p_dt_entrega_obra,
                                   string p_dt_proposta, string p_concorrentes, string p_resp_padrao_solucao, string p_frete, string p_faturamento, string p_destino_material, string p_contICMS,
                                   string p_incentFiscal, string p_desc_incentivo, string p_forma_pagamento, string p_financiamento, string p_instFinanceira, string p_indic_empr_codigo,
                                   string p_indic_dpes_codigo, string p_indic_comissao, string p_desconto, string p_moeda, string p_cod_repres, string p_empr_repres, string pAliqImposto, string pTaxaFlat,
                                   string p_maoObraCli, string p_tipoMaoObraCli, string p_indExportacao, string p_indRespZelo, string p_indEngResidente, string p_TecSeguranca, string p_SegRespCivil,
                                   string p_Plataforma, string p_Databook, string p_indTreinamentos, string p_CanteiroObras, string p_OutraNecessidade, string p_DescOutraNecessidade)
        {
            //Atualizando o valor nos atributos da classe
            this.numero_solic           = p_num_solic;
            this.status_solic           = p_status_solic;
            this.cliente                = p_cliente;
            this.obra                   = p_obra;
            this.observacao             = p_observacao;
            this.projeto                = p_projeto;
            this.cod_tecnico            = p_cod_tecnico;
            this.dpes_cod_tecnico       = p_dpes_cod_tecnico;
            this.cod_comercial          = p_cod_comercial;
            this.dpes_cod_comercial     = p_dpes_cod_comercial;
            this.tipo_negocio           = p_tipo_negocio;
            this.finalidade             = p_finalidade;
            this.empreendimento         = p_empreendimento;
            this.idioma                 = p_idioma;
            this.outro_idioma           = p_outro_idioma;
            this.valor                  = p_valor;
            this.dt_entrega_obra        = p_dt_entrega_obra;
            this.dt_proposta            = p_dt_proposta;
            this.concorrentes           = p_concorrentes;
            this.resp_padrao_solucao    = p_resp_padrao_solucao;
            this.frete                  = p_frete;
            this.faturamento            = p_faturamento;
            this.destino_material       = p_destino_material;
            this.contICMS               = p_contICMS;
            this.incentFiscal           = p_incentFiscal;
            this.desc_incentivo         = p_desc_incentivo;
            this.formaPagamento         = p_forma_pagamento;
            this.financiamento          = p_financiamento;
            this.instFinanceira         = p_instFinanceira;
            this.indic_empr_codigo      = p_indic_empr_codigo;
            this.indic_dpes_codigo      = p_indic_dpes_codigo;
            this.comissaoIndicador      = p_indic_comissao;
            this.desconto               = p_desconto;
            this.empr_repres            = p_empr_repres;
            this.cod_repres             = p_cod_repres;
            this.aliq_imposto           = pAliqImposto;
            this.taxa_flat              = taxa_flat;
            this.maoObraCli             = maoObraCli;
            this.tipoMaoObraCli         = tipoMaoObraCli;
            this.ind_exportacao         = ind_exportacao;
            this.ind_resp_zelo_material = ind_resp_zelo_material;
            this.ind_eng_residente      = ind_eng_residente;
            this.ind_tec_seguranca      = ind_tec_seguranca;
            this.ind_seg_resp_civil     = ind_seg_resp_civil;
            this.ind_plataforma         = ind_plataforma;
            this.ind_databook           = ind_databook;
            this.ind_treinamentos       = ind_treinamentos;
            this.ind_canteiro_obras     = ind_canteiro_obras;
            this.ind_outra_necessidade  = ind_outra_necessidade;
            this.desc_outra_necessidade = desc_outra_necessidade;

            int retorno;

            //Instancia a classe de conexão com o banco
            ManipulaBD mBD = new ManipulaBD();

            mBD.openConnection();
            try
            {
                string sql = "";
                if (p_act == "I") //Insert
                {
                    sql += "INSERT INTO [DOM_SOLIC_ORCAMENTO] ";
                    sql += "([NUMERO] ";
                    sql += ",[REVISAO] ";
                    sql += ",[STATUS] ";
                    sql += ",[OBSERVACOES] ";
                    sql += ",[NOME_PROJETO] ";
                    sql += ",[DPES_CODIGO_CLI] ";
                    sql += ",[DPES_CODIGO_OBRA] ";
                    sql += ",[COD_CONT_TEC_CLI] ";
                    sql += ",[DPES_CONT_TEC_CLI] ";
                    sql += ",[COD_CONT_COM_CLI] ";
                    sql += ",[DPES_COD_CONT_COM_CLI] ";
                    sql += ",[NEGOCIO_ASSOCIADO] ";
                    sql += ",[FINALIDADE_PROPOSTA] ";
                    sql += ",[TIPO_EMPREENDIMENTO] ";
                    sql += ",[IDIOMA_PROPOSTA] ";
                    sql += ",[OUTRO_IDIOMA] ";
                    sql += ",[DT_ENTREGA_OBRA] ";
                    sql += ",[VALOR_ESTIMADO] ";
                    sql += ",[DESCRICAO_CONCORRENTES] ";
                    sql += ",[RESP_PADRAO_VENDOR_LIST] ";
                    sql += ",[TIPO_FRETE] ";
                    sql += ",[INDIC_FATURAMENTO] ";
                    sql += ",[DESTINO_MATERIAL] ";
                    sql += ",[CLIENTE_CONTRIB_ICMS] ";
                    sql += ",[CLIENTE_INCENTIVO_FISCAL] ";
                    sql += ",[DESC_INCENTIVO_FISC] ";
                    sql += ",[FORMA_PAGAMENTO] ";
                    sql += ",[DESC_FINANCIAMENTO] ";
                    sql += ",[INSTITUICAO_FINANCEIRA] ";
                    sql += ",[INDIC_EMPR_CODIGO] ";
                    sql += ",[INDIC_DPES_CODIGO] ";
                    sql += ",[INDIC_PERC_COMISSAO] ";
                    sql += ",[MARGEM_DESCONTO] ";
                    sql += ",[MOEDA_PROPOSTA] ";
                    sql += ",[DT_PROPOSTA] ";
                    sql += ",[REPRES_EMPR_CODIGO] ";
                    sql += ",[REPRES_DPES_CODIGO] ";
                    sql += ",[INFORMAR_ALIQ_IMPOSTO] ";
                    sql += ",[CONSIDERAR_TAXA_FLAT] ";

                    sql += ",[MAO_OBRA_CLIENTE] ";
                    sql += ",[TIPO_MAO_OBRA] ";
                    sql += ",[IND_EXPORTACAO] ";
                    sql += ",[IND_RESP_ZELO_MATERIAL] ";
                    sql += ",[IND_ENG_RESIDENTE] ";
                    sql += ",[IND_TEC_SEGURANCA] ";
                    sql += ",[IND_SEG_RESP_CIVIL] ";
                    sql += ",[IND_PLATAFORMA] ";
                    sql += ",[IND_DATABOOK] ";
                    sql += ",[IND_TREINAMENTOS] ";
                    sql += ",[IND_CANTEIRO_OBRAS] ";
                    sql += ",[IND_OUTRA_NECESSIDADE] ";
                    sql += ",[DESC_OUTRA_NECESSIDADE]) ";
                    sql += "VALUES ";
                    sql += "(" + p_num_solic + ", ";
                    sql += "'" + p_revisao + "', ";
                    sql += "'" + p_status_solic + "', ";
                    sql += "'" + p_observacao + "', ";
                    sql += "'" + p_projeto + "', ";
                    sql += "'" + p_cliente + "', ";
                    sql += "" + p_obra + ", ";
                    sql += "'" + p_cod_tecnico + "', ";
                    if (string.IsNullOrEmpty(p_dpes_cod_tecnico)) //Se informou contato técnico
                    {
                        sql += " NULL, ";
                    }
                    else
                    {
                        sql += "'" + p_dpes_cod_tecnico + "', ";
                    }
                    sql += "'" + p_cod_comercial + "', ";
                    if (string.IsNullOrEmpty(p_dpes_cod_comercial)) //Se informou contato comercial
                    {
                        sql += " NULL, ";
                    }
                    else
                    {
                        sql += "'" + p_dpes_cod_comercial + "', ";
                    }
                    sql += "" + p_tipo_negocio + ", ";
                    sql += "" + p_finalidade + ", ";
                    sql += "" + p_empreendimento + ", ";
                    sql += "" + p_idioma + ", ";
                    sql += "'" + p_outro_idioma + "', ";
                    sql += "@p_data1, "; //DT_ENTREGA_OBRA
                    if (string.IsNullOrEmpty(p_valor))
                    {
                        sql += " NULL, ";
                    }
                    else
                    {
                        sql += " " + p_valor + ", ";
                    }
                    sql += "'" + p_concorrentes + "', ";
                    sql += "" + p_resp_padrao_solucao + ", ";
                    sql += "" + p_frete + ", ";
                    sql += "" + p_faturamento + ", ";
                    sql += "" + p_destino_material + ", ";
                    sql += "'" + p_contICMS + "', ";
                    sql += "'" + p_incentFiscal + "', ";
                    sql += "'" + p_desc_incentivo + "', ";
                    sql += "'" + p_forma_pagamento + "', ";
                    sql += "'" + p_financiamento + "', ";
                    sql += "'" + p_instFinanceira + "', ";
                    sql += "'" + p_indic_empr_codigo + "', ";
                    sql += "" + p_indic_dpes_codigo + ", ";
                    sql += "" + p_indic_comissao + ", ";
                    sql += "" + p_desconto + ", ";
                    sql += "" + p_moeda + ", ";
                    sql += "@p_data2, "; //DT_PROPOSTA
                    sql += "" + p_empr_repres + ", ";
                    sql += "" + p_cod_repres + ", ";
                    sql += "'" + pAliqImposto + "', ";
                    sql += "'" + pTaxaFlat + "', ";

                    sql += "'" + p_maoObraCli + "', ";
                    sql += "'" + p_tipoMaoObraCli + "', ";
                    sql += "'" + p_indExportacao + "', ";
                    sql += "'" + p_indRespZelo + "', ";
                    sql += "'" + p_indEngResidente + "', ";
                    sql += "'" + p_TecSeguranca + "', ";
                    sql += "'" + p_SegRespCivil + "', ";
                    sql += "'" + p_Plataforma + "', ";
                    sql += "'" + p_Databook + "', ";
                    sql += "'" + p_indTreinamentos + "', ";
                    sql += "'" + p_CanteiroObras + "', ";
                    sql += "'" + p_OutraNecessidade + "', ";
                    if (string.IsNullOrEmpty(p_DescOutraNecessidade))
                    {
                        sql += " NULL) ";
                    }
                    else
                    {
                        sql += "'" + p_DescOutraNecessidade + "') ";
                    }
                }
                else //U - Update
                {
                    sql += "UPDATE [DOM_SOLIC_ORCAMENTO] ";
                    sql += "    SET [STATUS] = '" + p_status_solic + "', ";
                    sql += "    [OBSERVACOES] = '" + p_observacao + "', ";
                    sql += "    [NOME_PROJETO] = '" + p_projeto + "', ";
                    sql += "    [DPES_CODIGO_CLI] = '" + p_cliente + "', ";
                    sql += "    [DPES_CODIGO_OBRA] = '" + p_obra + "',";
                    sql += "    [COD_CONT_TEC_CLI] = '" + p_cod_tecnico + "', ";
                    if (string.IsNullOrEmpty(p_dpes_cod_tecnico))
                    {
                        sql += "    [DPES_CONT_TEC_CLI] = NULL, ";
                    }
                    else
                    {
                        sql += "    [DPES_CONT_TEC_CLI] = " + p_dpes_cod_tecnico + ", ";
                    }
                    sql += "    [COD_CONT_COM_CLI] = '" + p_cod_comercial + "', ";
                    if (string.IsNullOrEmpty(p_dpes_cod_comercial))
                    {
                        sql += "    [DPES_COD_CONT_COM_CLI] = NULL, ";
                    }
                    else
                    {
                        sql += "    [DPES_COD_CONT_COM_CLI] = " + p_dpes_cod_comercial + ", ";
                    }
                    sql += "    [NEGOCIO_ASSOCIADO] = " + p_tipo_negocio + ", ";
                    sql += "    [FINALIDADE_PROPOSTA] = " + p_finalidade + ", ";
                    sql += "    [TIPO_EMPREENDIMENTO] = " + p_empreendimento + ", ";
                    sql += "    [IDIOMA_PROPOSTA] = " + p_idioma + ", ";
                    sql += "    [OUTRO_IDIOMA] = '" + p_outro_idioma + "', ";
                    sql += "    [DT_ENTREGA_OBRA] = @p_data1, ";
                    if (string.IsNullOrEmpty(p_valor))
                    {
                        sql += "    [VALOR_ESTIMADO] = NULL, ";
                    }
                    else
                    {
                        sql += "    [VALOR_ESTIMADO] = " + p_valor + ", ";
                    }
                    sql += "    [DESCRICAO_CONCORRENTES] = '" + p_concorrentes + "',";
                    sql += "    [RESP_PADRAO_VENDOR_LIST] = " + p_resp_padrao_solucao + ", ";
                    sql += "    [TIPO_FRETE] = " + p_frete + ", ";
                    sql += "    [INDIC_FATURAMENTO] = " + p_faturamento + ", ";
                    sql += "    [DESTINO_MATERIAL] = " + p_destino_material + ", ";
                    sql += "    [CLIENTE_CONTRIB_ICMS] = '" + p_contICMS + "', ";
                    sql += "    [CLIENTE_INCENTIVO_FISCAL] = '" + p_incentFiscal + "', ";
                    sql += "    [DESC_INCENTIVO_FISC] = '" + p_desc_incentivo + "', ";
                    sql += "    [FORMA_PAGAMENTO] = '" + p_forma_pagamento + "', ";
                    sql += "    [DESC_FINANCIAMENTO] = '" + p_financiamento + "', ";
                    sql += "    [INSTITUICAO_FINANCEIRA] = '" + p_instFinanceira + "', ";
                    sql += "    [INFORMAR_ALIQ_IMPOSTO] = '" + pAliqImposto + "', ";
                    sql += "    [CONSIDERAR_TAXA_FLAT] = '" + pTaxaFlat + "', ";
                    sql += "    [INDIC_EMPR_CODIGO] = '" + p_indic_empr_codigo + "', ";
                    sql += "    [INDIC_DPES_CODIGO] = " + p_indic_dpes_codigo + ", ";
                    sql += "    [INDIC_PERC_COMISSAO] = " + p_indic_comissao + ", ";
                    sql += "    [MARGEM_DESCONTO] = " + p_desconto + ", ";
                    sql += "    [MOEDA_PROPOSTA] = " + p_moeda + ", ";
                    sql += "    [DT_PROPOSTA] = @p_data2, ";

                    sql += "    [MAO_OBRA_CLIENTE] = '" + p_maoObraCli + "', ";
                    sql += "    [TIPO_MAO_OBRA] = " + p_tipoMaoObraCli + ", ";
                    sql += "    [IND_EXPORTACAO] = '" + p_indExportacao + "', ";
                    sql += "    [IND_RESP_ZELO_MATERIAL] = '" + p_indRespZelo + "', ";
                    sql += "    [IND_ENG_RESIDENTE] = '" + p_indEngResidente + "', ";
                    sql += "    [IND_TEC_SEGURANCA] = '" + p_TecSeguranca + "', ";
                    sql += "    [IND_SEG_RESP_CIVIL] = '" + p_SegRespCivil + "', ";
                    sql += "    [IND_PLATAFORMA] = '" + p_Plataforma + "', ";
                    sql += "    [IND_DATABOOK] = '" + p_Databook + "', ";
                    sql += "    [IND_TREINAMENTOS] = '" + p_indTreinamentos + "', ";
                    sql += "    [IND_CANTEIRO_OBRAS] = '" + p_CanteiroObras + "', ";
                    sql += "    [IND_OUTRA_NECESSIDADE] = '" + p_OutraNecessidade + "', ";
                    if (string.IsNullOrEmpty(p_DescOutraNecessidade))
                    {
                        sql += "    [DESC_OUTRA_NECESSIDADE] = NULL ";
                    }
                    else
                    {
                        sql += "    [DESC_OUTRA_NECESSIDADE] = '" + p_DescOutraNecessidade + "' ";
                    }

                    sql += " WHERE[NUMERO] = " + p_num_solic + " ";
                    sql += "AND[REPRES_EMPR_CODIGO] = " + p_empr_repres + " ";
                    sql += "AND[REPRES_DPES_CODIGO] = " + p_cod_repres + " ";
                    sql += "AND[REVISAO] = '" + p_revisao + "'";
                }
                retorno = mBD.insertSOF(sql, p_dt_entrega_obra, p_dt_proposta);
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                mBD.closeConnection();
            }
        }