public virtual CrystalDecisions.CrystalReports.Engine.ReportDocument CreateReport()
        {
            RepProblemaMedicoPaciente rpt = new RepProblemaMedicoPaciente();

            rpt.Site = this.Site;
            return(rpt);
        }
Exemple #2
0
        private void ImprimirCaso()
        {
            MySqlConnection  oCnn         = new MySqlConnection(cCadenaclsConexion);
            MySqlCommand     oComando     = new MySqlCommand();
            MySqlDataAdapter oAdaptador   = new MySqlDataAdapter();
            DataTable        dtCasomedico = new DataTable();
            StringBuilder    sbQuery      = new StringBuilder();
            string           cWhere       = "";
            string           cUsuario     = frmLogin.cUsuarioActual;
            string           cTitulo      = "";

            //1ero. Creo mi comando
            // El metodo CreateCommand Crea y devuelve un SqlCommand objeto asociado al SqlConnection .
            oComando = oCnn.CreateCommand();
            //2do. paso la cadena de coneccion al Commando
            //la propiedad Connecti Obtiene o establece el SqlConnection utiliza esta instancia del SqlCommand.
            oComando.Connection = oCnn;
            //abro la coneccion
            oCnn.Open();
            if (rdoImprimeCaso.Checked)
            {
                cWhere = " where casomedico.idcasomedico = " + txtNoCaso.Text + "";
            }
            //if (rdoPaciente.Checked)
            //{
            //    cWhere = " where paciente.id_paciente = " + cboPaciente.SelectedValue + "";

            //}
            if (rdoCedula.Checked)
            {
                cWhere = " where paciente.cedula = '" + txtCed.Text + "'";
            }

            sbQuery.Clear();
            sbQuery.Append("select casomedico.idcasomedico,casomedico.cedula_doctor,casomedico.cedula_paciente,");
            sbQuery.Append("casomedico.problema_descripcion,casomedico.problema_objetivo,casomedico.problema_accion,");
            sbQuery.Append("casomedico.problema_prescripcion,casomedico.fecha,");
            sbQuery.Append("doctores.doctores_cedula,doctores.doctores_nombre,");
            sbQuery.Append("doctores.doctores_apellido,doctores.doctores_rango,doctores.doctores_especialidad,");
            sbQuery.Append("paciente.cedula,paciente.rango,paciente.nombre,paciente.apellido,paciente.edad,");
            sbQuery.Append("rangos.rango_descripcion,rangos.rangoabrev,");
            sbQuery.Append("especialidades.especialidades_descripcion");
            sbQuery.Append(" from casomedico");
            sbQuery.Append(" left join doctores on doctores.doctores_cedula = casomedico.cedula_doctor");
            sbQuery.Append(" left join especialidades on especialidades.especialidades_id = doctores.doctores_especialidad");
            sbQuery.Append(" left join paciente on paciente.cedula = casomedico.cedula_paciente");
            sbQuery.Append(" left join rangos on rangos.rango_id = paciente.rango");
            sbQuery.Append(cWhere);
            sbQuery.Append("");
            sbQuery.Append("");
            sbQuery.Append("");
            sbQuery.Append("");
            sbQuery.Append("");

            oComando.CommandText = sbQuery.ToString();

            oAdaptador = new MySqlDataAdapter(oComando);
            oAdaptador.Fill(dtCasomedico);
            int nRegistro = dtCasomedico.Rows.Count;

            if (nRegistro == 0)
            {
                MessageBox.Show("No Hay Datos Para Mostrar, Favor Verificar", "Sistema Medico", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            else
            {
                //1ero.HACEMOS LA COLECCION DE PARAMETROS

                //los campos de parametros contiene un objeto para cada campo de parametro en el informe
                ParameterFields oParametrosCR = new ParameterFields();
                //Proporciona propiedades para la recuperacion y configuracion del tipo de los parametros
                ParameterValues oParametrosValuesCR = new ParameterValues();

                //2do.CREAMOS LOS PARAMETROS
                ParameterField oUsuario = new ParameterField();
                //parametervaluetype especifica el TIPO de valor de parametro
                //ParameterValueKind especifica el tipo de valor de parametro en la PARAMETERVALUETYPE de la Clase PARAMETERFIELD
                oUsuario.ParameterValueType = ParameterValueKind.StringParameter;

                //3ero.VALORES PARA LOS PARAMETROS
                //ParameterDiscreteValue proporciona propiedades para la recuperacion y configuracion de
                //parametros de valores discretos
                ParameterDiscreteValue oUsuarioDValue = new ParameterDiscreteValue();
                oUsuarioDValue.Value = cUsuario;

                //4to. AGREGAMOS LOS VALORES A LOS PARAMETROS
                oUsuario.CurrentValues.Add(oUsuarioDValue);


                //5to. AGREGAMOS LOS PARAMETROS A LA COLECCION
                oParametrosCR.Add(oUsuario);

                //nombre del parametro en CR (Crystal Reports)
                oParametrosCR[0].Name = "cUsuario";

                //nombre del TITULO DEL INFORME
                cTitulo = "REPORTE PROBLEMAS MEDICO";

                //6to Instanciamos nuestro REPORTE
                Reportes.ListadoDoctores oListado = new Reportes.ListadoDoctores();
                //pasamos el nombre del TITULO del Listado
                //SumaryInfo es un objeto que se utiliza para leer,crear y actualizar las propiedades del reporte
                oListado.SummaryInfo.ReportTitle = cTitulo;

                Reportes.RepProblemaMedicoPaciente oReporte = new Reportes.RepProblemaMedicoPaciente();
                oReporte.SummaryInfo.ReportTitle = cTitulo;

                frmPrinter ofrmPrimter = new frmPrinter(dtCasomedico, oReporte, cTitulo);
                ofrmPrimter.CrystalReportViewer1.ParameterFieldInfo = oParametrosCR;
                ofrmPrimter.ShowDialog();
            }
        }