private void GetCiselnikProjektExt(MigraciaStavovDto data, int nastavenieISOZdroj, string sConnString) { DateTime datumK = (DateTime)data.DatumDo; if (nastavenieISOZdroj == 1) { using (var tran = BeginTransaction()) { try { using (IDbConnection cn = GetNewDb(sConnString, nastavenieISOZdroj)) { string sSql = Properties.Resources.Korwin_PRJ.Replace("DB_FROM", cn.Database); sSql = sSql.Replace("2019", datumK.Year.ToString()); Db.ExecuteNonQuery(sSql); } tran.Commit(); } catch (Exception ex) { tran.Rollback(); throw new WebEasException(null, "Nastala chyba pri importe projektov za rok " + datumK.Year.ToString(), ex); } } } }
private void GetCiselnikPokladnicaExt(MigraciaStavovDto data, int nastavenieISOZdroj, string sConnString, string madeLinkedServer) { string sSql; DateTime datumK = (DateTime)data.DatumDo; if (nastavenieISOZdroj == 1) { using (var tran = BeginTransaction()) { try { using (IDbConnection cn = GetNewDb(sConnString, nastavenieISOZdroj)) { sSql = Properties.Resources.Korwin_POK.Replace("DB_FROM", cn.Database); sSql = sSql.Replace("2019", datumK.Year.ToString()); Db.ExecuteNonQuery(sSql); } tran.Commit(); } catch (Exception ex) { tran.Rollback(); throw new WebEasException(null, "Nastala chyba pri importe pokladníc za rok " + datumK.Year.ToString(), ex); } } } else if (nastavenieISOZdroj == 2) { var roky = Enumerable.Range(datumK.Year, DateTime.Now.Year - datumK.Year + 1).ToList(); foreach (int rok in roky) { using (var tran = BeginTransaction()) { try { using (IDbConnection cn = GetNewDb(sConnString, nastavenieISOZdroj)) { if (cn.TableExists("uco_pokdef" + rok.ToString())) { sSql = Properties.Resources.Urbis_POK.Replace("URBIS_LS", madeLinkedServer).Replace("DB_FROM", cn.Database).Replace("@YEAR", rok.ToString()); Db.ExecuteNonQuery(sSql); } } tran.Commit(); } catch (Exception ex) { tran.Rollback(); throw new WebEasException(null, "Nastala chyba pri importe pokladníc za rok " + rok.ToString(), ex); } } } } SetCislovanie(); }
private void MigraciaPociatocnehoStavu(MigraciaStavovDto request, string processKey) { request.DatumDo = CheckESAMStartDate(request.DatumDo); string madeLinkedServer = "URBIS"; int nastavenieISOZdroj = (int)GetNastavenieI("cfe", "ISOZdroj"); string sConnString = GetNastavenieS("cfe", "ISOZdrojDatabaza"); if (nastavenieISOZdroj == 2 && GetNastavenieS("sys", "Environment").Contains("ZPP")) { madeLinkedServer = sConnString.Split('\\')[0].Substring(7); sConnString = ReplaceFirst(sConnString, "URBIS", "10.231.3."); } if (request.TypImportu.Contains("reg-str")) { LongOperationSetStateMessage(processKey, "Prebieha migrácia stredísk (1/4)"); GetCiselnikStrediskoExt(request, nastavenieISOZdroj, sConnString, madeLinkedServer); } if (request.TypImportu.Contains("reg-ban")) { LongOperationSetStateMessage(processKey, "Prebieha migrácia bankových účtov (2/4)"); GetCiselnikBankaUcetExt(request, nastavenieISOZdroj, sConnString, madeLinkedServer); } if (request.TypImportu.Contains("reg-pdk")) { LongOperationSetStateMessage(processKey, "Prebieha migrácia pokladníc (3/4)"); GetCiselnikPokladnicaExt(request, nastavenieISOZdroj, sConnString, madeLinkedServer); } if (request.TypImportu.Contains("reg-proj")) { LongOperationSetStateMessage(processKey, "Prebieha migrácia projektov (4/4)"); GetCiselnikProjektExt(request, nastavenieISOZdroj, sConnString); } SetCislovanie(); SetPredkontacia(); // pregeneruj/vygeneruj uct.C_Predkontacia InvalidateTreeCountsForPath("reg-.*"); LongOperationSetStateFinished(processKey, string.Empty, "Migrácia modulu 'Registre' prebehla úspešne.", state: LongOperationState.Done); }