예제 #1
0
        private static void ReadENwisParmsExcelToSql(string inputExcelFile, StringBuilder sb)
        {
            if (!File.Exists(inputExcelFile))
            {
                throw new ArgumentException("Input excel file '" + inputExcelFile + "' does not exist!");
            }

            object misValue             = Missing.Value;
            var    xlApp                = new Excel.Application();
            var    xlWorkBook           = xlApp.Workbooks.Open(inputExcelFile, 0, true, 5, "", "", true, Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
            var    cachedMetadataTables = new MetadataParamTables();

            if (xlWorkBook != null)
            {
                cachedMetadataTables.Load(xlWorkBook);
                xlWorkBook.Close(true, misValue, misValue);
                xlApp.Quit();
            }
            ReleaseObject(xlWorkBook);
            ReleaseObject(xlApp);

            Console.WriteLine("[Debug] MetadataTables is loadded.");
            Console.WriteLine("[Debug] ParamTable: {0}", cachedMetadataTables.ParamTable);
            Console.WriteLine("[Debug] UnitsTable: {0}", cachedMetadataTables.UnitsTable);
            Console.WriteLine("[Debug] UnitsGroupTable: {0}", cachedMetadataTables.UnitsGroupTable);
            ReadDataIntoSQL(cachedMetadataTables, sb);
        }
예제 #2
0
        private static void ReadDataIntoSQL(MetadataParamTables cachedMetadataParamTables, StringBuilder sb)
        {
            sb.AppendLine(@"USE $(DBName)");
            sb.AppendLine(@"DECLARE @CNT INT;");
            sb.AppendLine();
            //first go through UnitsGroup
            ReadUnitsGroup(cachedMetadataParamTables.UnitsGroupTable, sb);

            //Then go through Units
            ReadUnits(cachedMetadataParamTables.UnitsTable, sb);

            //Last go through Parameters
            ReadParameters(cachedMetadataParamTables.ParamTable, sb);
        }