public static ActionResult ActoRealizadoAdd(qes_actorealizado acto)
        {
            var res = ActionResult.NoAction;

            if (organizationService == null)
            {
                GetCRMConnection();
            }
            try
            {
                var actoId = organizationService.Create(acto);
                res.SetSuccess(actoId);
            }
            catch (Exception ex)
            {
                res.SetFail(ex);
            }

            return(res);
        }
Exemple #2
0
        public ActionResult RealizarPresupuesto(Guid presupuestoId, Guid centroId, DateTime fecha)
        {
            var res = ActionResult.NoAction;

            using (var cmd = new SqlCommand("ASPADLAND_GetPresupuestoPendienteByPresupuestoIdToCRM"))
            {
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.Add(DataParameter.Input("@PresupuestoId", presupuestoId));
                cmd.Parameters.Add(DataParameter.Input("@CentroId", centroId));
                cmd.Parameters.Add(DataParameter.Input("@Fecha", fecha.ToUniversalTime()));
                using (var cnn = new SqlConnection(ConfigurationManager.ConnectionStrings["cns"].ConnectionString))
                {
                    cmd.Connection = cnn;
                    try
                    {
                        cmd.Connection.Open();
                        using (var rdr = cmd.ExecuteReader())
                        {
                            while (rdr.Read())
                            {
                                qes_actorealizado actorealizado = new qes_actorealizado
                                {
                                    qes_CentroId       = new Microsoft.Xrm.Sdk.EntityReference("account", centroId),
                                    qes_ActoId         = new Microsoft.Xrm.Sdk.EntityReference("product", rdr.GetGuid(0)),
                                    qes_MascotaId      = new Microsoft.Xrm.Sdk.EntityReference("qes_mascotas", rdr.GetGuid(1)),
                                    qes_PolizaId       = new Microsoft.Xrm.Sdk.EntityReference("qes_poliza", rdr.GetGuid(2)),
                                    qes_AseguradoId    = new Microsoft.Xrm.Sdk.EntityReference("contact", rdr.GetGuid(3)),
                                    qes_fechaproceso   = fecha.ToUniversalTime(),
                                    qes_descripcion    = rdr.GetString(4),
                                    qes_EspecialidadId = new Microsoft.Xrm.Sdk.EntityReference("qes_especialidad", rdr.GetGuid(5)),
                                    qes_TarifaId       = new Microsoft.Xrm.Sdk.EntityReference("pricelevel", rdr.GetGuid(8))
                                };

                                if (!rdr.IsDBNull(6))
                                {
                                    actorealizado.qes_Importe = new Microsoft.Xrm.Sdk.Money(rdr.GetDecimal(6));
                                }

                                if (!rdr.IsDBNull(7))
                                {
                                    actorealizado.Attributes.Add("qes_porcentaje", rdr.GetDecimal(7));
                                }

                                res = CRMOperations.ActoRealizadoAdd(actorealizado);

                                if (res.Success)
                                {
                                    res = MarcarActoRealizado(presupuestoId, rdr.GetString(0), res.ReturnValue.ToString(), fecha);
                                }
                                else
                                {
                                    res.SetFail(res.MessageError);
                                }
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        res.SetFail(ex);
                    }
                    finally
                    {
                        if (cmd.Connection.State != System.Data.ConnectionState.Closed)
                        {
                            cmd.Connection.Close();
                        }
                    }
                }
            }

            return(res);
        }