private void GravarModelo(RegistroModelo registroModelo)
        {
            DalConnection dal = new DalConnection(configuration, logger);

            try
            {
                StringBuilder sb = new StringBuilder();
                sb.AppendLine("DELETE FROM DSDH_MODELOS_CMV");
                sb.AppendLine("WHERE FILIAL = &FIL");
                sb.AppendLine("AND SECAO = &SEC");
                sb.AppendLine("AND GRUPO = &GRP");
                sb.AppendLine("AND SUBGRUPO = &SGRP");

                Dictionary <string, object> param = new Dictionary <string, object>
                {
                    { "FIL", registroModelo.Filial },
                    { "SEC", registroModelo.Secao },
                    { "GRP", registroModelo.Grupo },
                    { "SGRP", registroModelo.SubGrupo }
                };

                dal.ExecuteNonQuery(sb, param);

                sb = new StringBuilder();
                sb.AppendLine("INSERT INTO DSDH_MODELOS_CMV (");
                sb.AppendLine("FILIAL, SECAO, GRUPO, SUBGRUPO,");
                sb.AppendLine("MEANABSOLUTEERROR,MEANSQUAREDERROR,ROOTMEANSQUAREDERROR,");
                sb.AppendLine("LOSSFUNC,RSQUARED,MODELO)");
                sb.AppendLine("VALUES (&FIL, &SEC, &GRP, &SGRP,");
                sb.AppendLine("&MAB, &MSE, &RMSE, &LSFNC, &RSQ, &MDL)");

                param = new Dictionary <string, object>
                {
                    { "FIL", registroModelo.Filial },
                    { "SEC", registroModelo.Secao },
                    { "GRP", registroModelo.Grupo },
                    { "SGRP", registroModelo.SubGrupo },
                    { "MAB", registroModelo.MeanAbsoluteError },
                    { "MSE", registroModelo.MeanSquaredError },
                    { "RMSE", registroModelo.RootMeanSquaredError },
                    { "LSFNC", registroModelo.LossFunc },
                    { "RSQ", registroModelo.RSquared },
                    { "MDL", registroModelo.Modelo }
                };

                dal.ExecuteNonQuery(sb, param);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                dal = null;
            }
        }
Exemplo n.º 2
0
        private void GravaPrevisoes(List <RegistroCmv> previsoes, RegistroModelo modelo)
        {
            DalConnection dal = new DalConnection(configuration, logger);

            try
            {
                StringBuilder sb = new StringBuilder();
                sb.AppendLine("DELETE FROM DSDH_PREVISAO_CMV");
                sb.AppendLine("WHERE FILIAL = &FIL");
                sb.AppendLine("AND SECAO = &SEC");
                sb.AppendLine("AND GRUPO = &GRP");
                sb.AppendLine("AND SUBGRUPO = &SGRP");

                Dictionary <string, object> param = new Dictionary <string, object>
                {
                    { "FIL", modelo.Filial },
                    { "SEC", modelo.Secao },
                    { "GRP", modelo.Grupo },
                    { "SGRP", modelo.SubGrupo }
                };

                dal.ExecuteNonQuery(sb, param);

                sb = new StringBuilder();
                sb.AppendLine("INSERT INTO DSDH_PREVISAO_CMV (");
                sb.AppendLine("DIA, FILIAL, SECAO, GRUPO, SUBGRUPO, CMV )");
                sb.AppendLine("VALUES (&DIA, &FIL, &SEC, &GRP, &SGRP, &CMV)");

                foreach (var previsao in previsoes)
                {
                    param = new Dictionary <string, object>
                    {
                        { "DIA", ((previsao.Dia.Year - 1900) * 100 + previsao.Dia.Month) * 100 + previsao.Dia.Day },
                        { "FIL", modelo.Filial },
                        { "SEC", modelo.Secao },
                        { "GRP", modelo.Grupo },
                        { "SGRP", modelo.SubGrupo },
                        { "CMV", Math.Round(previsao.Valor, 2) }
                    };

                    dal.ExecuteNonQuery(sb, param);
                }
            }
            catch
            {
                throw;
            }
            finally
            {
                dal = null;
            }
        }