public void CarregaSolcitacaoEdicao()
        {
            if (Request.QueryString["id"] != null)
            {
                string idProc = Request.QueryString["id"].ToString();
                txtNumeroProcesso.Text = ProcessoCtrl.RetornaNumeroProcessoByID(idProc);

                ctrlSolicitacao.Dados ctrl = new ctrlSolicitacao.Dados();
                ctrlSolicitacao sol = ctrl.getDadosSolicitacaoEdicao(idProc);

                dtSolicitacao.Date = sol.solData;

                ASPxComboBox1.DataBind();
                ASPxComboBox1.Value = sol.solIDClassificacao;
                ASPxComboBox1.Text = sol.solClassificacao;
                cbbUndOrcamentaria.Value = sol.solUndUnificado;

                if(sol.solSemCotacao == 1){
                    chbSemCotacao.Value = true;
                }
                else
                {
                    chbSemCotacao.Value = false;
                }

                if(sol.solAtaRegsitroPreco == 1){
                    chbAtaRegistroPreco.Value = true;
                }
                else
                {
                    chbAtaRegistroPreco.Value = false;
                    cbbDotacoes_Callback(null, null);
                }

                cbbSolicitante_Callback(null,null);
                cbbSolicitante.Value = sol.solIdSolicitante;
                cbbSolicitante.Text = sol.solSolicitante;

                cbbFonteRecurso.Value = sol.solIdFonteRecurso;

                txtJustificativa.Text = sol.solJustificativa;
                txtObjeto.Text = sol.solObjeto;

                //CarregaItensSolicitacao();
                //CarregaGradeDotacoes();

            }
            else {
                Response.Redirect("CRUDSOLICITACAO.aspx");
            }
        }
        public string GravaSolicitacao(string op)
        {
            string origem = string.Empty;

            ctrlSolicitacao obj = new ctrlSolicitacao();

            ctrlSolicitacao.Dados dados = new ctrlSolicitacao.Dados();

            Model.Usuarios usu = new Model.Usuarios();

            usu.UsuarioID = int.Parse(hdfDadosUsuario["IDUSUARIO"].ToString());

            obj._RESPONSAVEL = UsuariosControle.GetUsuarioById(usu).Nome;
            obj.solData = DateTime.Parse(dtSolicitacao.Date.ToString());
            obj.solIDClassificacao = Convert.ToInt16(ASPxComboBox1.Value);

            if (Convert.ToBoolean(chbSemCotacao.Checked))
            {
                obj.solSemCotacao = 1;
            }
            else
            {
                obj.solSemCotacao = 0;
            }

            if (Convert.ToBoolean(chbAtaRegistroPreco.Checked))
            {
                obj.solAtaRegsitroPreco = 1;
            }
            else
            {
                obj.solAtaRegsitroPreco = 0;
            }

            obj.solUndUnificado = cbbUndOrcamentaria.SelectedItem.Value.ToString();
            obj.solIdSolicitante = Convert.ToInt16(cbbSolicitante.Value);
            obj.solObjeto = txtObjeto.Text.ToString();
            obj.solJustificativa = txtJustificativa.Text.ToString();
            if (!chbAtaRegistroPreco.Checked)
            {
                obj.solIdFonteRecurso = cbbFonteRecurso.Value.ToString().Trim();
            }
            obj.Dotacoes1 = (DataTable)Session["dsGridDotacoes"];
            obj.Itens1 = (DataTable)Session["dsItensSolicitacao"];
            obj.solUnidadeFuncional = hdfDadosUsuario["UNDFUNCIONAL"].ToString();
            obj.solUsuarioID = hdfDadosUsuario["IDUSUARIO"].ToString();

            if (op == "edt")
            {
                obj._IDPROC = Convert.ToInt16(Request.QueryString["id"]);
                origem = "btnSalvarSolicitacao";
            }
            else {
                if (op == "cabecaSolicitacao")
                {
                    if (txtNumeroProcesso.Text != string.Empty) {
                        obj._IDPROC = Convert.ToInt16(Request.QueryString["id"]);
                        op = "edt";
                    }
                    origem = "btnSalvarSolicitacaoCabeca";
                }
                else {
                    obj._IDPROC = int.Parse(ProcessoCtrl.getIDbyNumeroProcesso(txtNumeroProcesso.Text));
                    origem = "btnSalvarSolicitacao";
                }
            }

            string retorno = dados.Grava(obj,op, origem);
            return retorno;
        }
        public string CarregaItensSolicitacao(string origem)
        {
            string retorno = string.Empty;
            System.Data.DataTable dtItensSolicitacao = new DataTable();

            if (Request.QueryString["op"] == "edt" && origem.Equals("load"))
            {
                FbConnection conn = AcessoDados.AcessoDados.getConn();

                conn.Open();

                string sql = "SELECT SIT.itdcod itd_cod, ITD.idtnome AS ITD_NOME, SIT.soi_qtde qtde, SIT.soi_vlrbase valor " +
                                "FROM sci_solicitacao SOL " +
                                "JOIN sci_solicitacao_itens SIT ON SIT.sol_isn = SOL.sol_isn " +
                                "JOIN webprocesso PROC ON PROC.id = SOL.idprocesso_fluxus " +
                                "JOIN itens_desp ITD ON ITD.itdcod = SIT.itdcod " +
                                "WHERE PROC.ID =" + Request.QueryString["id"].ToString();

                //FbCommand comando = new FbCommand(sql, conn);
                using (FbCommand fbCmd = new FbCommand(sql, conn))
                {
                    FbDataAdapter dta = new FbDataAdapter(fbCmd);

                    dta.Fill(dtItensSolicitacao);
                }
                conn.Close();

                //Session.Add("dsItensSolicitacao", dtItensSolicitacao);

                gridItensSolicitacao.DataSource = dtItensSolicitacao;
                gridItensSolicitacao.DataBind();
            }
            else
            {
                if (cbbItesDesp.Value != null)
                {
                    ctrlSolicitacao.Dados obj = new ctrlSolicitacao.Dados();
                    dtItensSolicitacao = obj.GravaItensSolicitacao(txtNumeroProcesso.Text, Convert.ToDecimal(txtITDQtde.Text), Convert.ToDecimal(txtValorUnitarioItem.Text), Convert.ToInt32(cbbItesDesp.Value));

                    gridItensSolicitacao.DataSource = dtItensSolicitacao;
                    gridItensSolicitacao.DataBind();
                }
            }
            return retorno;
        }