Esempio n. 1
0
        protected override void Execute(CodeActivityContext context)
        {
            var excelpath  = ExcelPath.Get(context);
            var pageindex  = SheetIndex.Get(context);
            var txtpath    = TxtPath.Get(context);
            var splitchar  = SplitChar.Get(context);
            var addheaders = AddHeaders.GetType();

            Workbook wb = new Workbook();

            wb.LoadFromFile(@excelpath);
            Worksheet ws = wb.Worksheets[pageindex];
            DataTable dt = ws.ExportDataTable();

            //TXT VARSA İÇİNİ TEMİZLE
            if (File.Exists(txtpath))
            {
                File.WriteAllText(txtpath, "");
            }
            //BAŞLIK
            if (AddHeaders)
            {
                string[] columnNames = dt.Columns.Cast <DataColumn>().Select(x => x.ColumnName).ToArray();
                File.AppendAllText(@txtpath, string.Join(splitchar, columnNames) + Environment.NewLine);
            }
            //SATIRLAR
            foreach (DataRow dtR in dt.Rows)
            {
                File.AppendAllText(@txtpath, string.Join(splitchar, dtR.ItemArray) + Environment.NewLine);
            }
        }
Esempio n. 2
0
        protected override IAsyncResult BeginExecute(AsyncCodeActivityContext context, AsyncCallback callback, object state)
        {
            PropertyDescriptor property = context.DataContext.GetProperties()[ExcelCreate.GetExcelAppTag];
            Excel::Application excelApp = property.GetValue(context.DataContext) as Excel::Application;

            try
            {
                Int32         sheetIndex   = SheetIndex.Get(context);
                string        oldSheetName = OldSheetName.Get(context);
                string        sheetName    = SheetName.Get(context);
                Excel::Sheets sheets       = excelApp.ActiveWorkbook.Sheets;
                if (oldSheetName != "" && oldSheetName != null)
                {
                    sheets.Item[oldSheetName].Name = sheetName;
                }
                else
                {
                    sheets.Item[sheetIndex].Name = sheetName;
                }
                System.Runtime.InteropServices.Marshal.ReleaseComObject(sheets);
                sheets = null;
                GC.Collect();
            }
            catch (Exception e)
            {
                new CommonVariable().realaseProcessExit(excelApp);
                SharedObject.Instance.Output(SharedObject.enOutputType.Error, "EXCEL重命名工作表执行过程出错", e.Message);
            }
            m_Delegate = new runDelegate(Run);
            return(m_Delegate.BeginInvoke(callback, state));
        }
Esempio n. 3
0
        public override int GetHashCode()
        {
            int hashCode = 1713590872;

            hashCode = hashCode * -1521134295 + SheetIndex.GetHashCode();
            hashCode = hashCode * -1521134295 + RowIndex.GetHashCode();
            hashCode = hashCode * -1521134295 + CellIndex.GetHashCode();
            return(hashCode);
        }
        protected override void Execute(CodeActivityContext context)
        {
            using (var workbook = new XLWorkbook(WorkbookPath.Get(context)))
            {
                var workSheet = workbook.Worksheet(SheetIndex.Get(context));
                if (workSheet == null)
                {
                    throw new InvalidOperationException("Worksheet is not in a valid range");
                }

                SheetName.Set(context, workSheet.Name);
            }
        }
Esempio n. 5
0
 public bool Equals(FileSetting other)
 {
     return
         (Name.Equals(other.name) &&
          SheetIndex.Equals(other.SheetIndex) &&
          SheetName.Equals(other.SheetName) &&
          IsStartupSheet.Equals(other.IsStartupSheet) &&
          ColumnHeaderIndex.Equals(other.ColumnHeaderIndex) &&
          RowHeaderIndex.Equals(other.RowHeaderIndex) &&
          RowHeaderName.Equals(other.RowHeaderName) &&
          ExactMatch.Equals(other.ExactMatch) &&
          UseRegex.Equals(other.UseRegex) &&
          MaxRowHeaderWidth.Equals(other.MaxRowHeaderWidth));
 }
Esempio n. 6
0
        public void DeleteSheet(SheetIndex index)
        {
            BatchUpdateSpreadsheetRequest requestBody = new Request
            {
                DeleteSheet = new DeleteSheetRequest
                {
                    SheetId = index.Id
                }
            }.ToBody();

            SheetsService.Spreadsheets
            .BatchUpdate(requestBody, SpreadsheetId)
            .Execute();
        }
Esempio n. 7
0
        public void CreateSheet(SheetIndex index)
        {
            BatchUpdateSpreadsheetRequest requestBody = new Request
            {
                AddSheet = new AddSheetRequest
                {
                    Properties = index.ToGoogleSheetProperties()
                }
            }.ToBody();

            SheetsService.Spreadsheets
            .BatchUpdate(requestBody, SpreadsheetId)
            .Execute();
        }
Esempio n. 8
0
        public void RenameSheet(SheetIndex index, string name)
        {
            BatchUpdateSpreadsheetRequest requestBody = new Request
            {
                UpdateSheetProperties = new UpdateSheetPropertiesRequest
                {
                    Properties = new SheetProperties
                    {
                        SheetId = index.Id,
                        Title   = name
                    },
                    Fields = Title
                }
            }.ToBody();

            SheetsService.Spreadsheets.BatchUpdate(requestBody, SpreadsheetId).Execute();
            index.Name = name;
        }
Esempio n. 9
0
        public static void TestGoogleTable()
        {
            ITable table = new GoogleTable(new CredentialService().GetGoogleCredentials().Result);
            var    info  = new TableInfo("test");

            table.Create(info, new DrivePath(new List <string> {
                "Test", "a"
            }));

            var sheetIndex = new SheetIndex("NEW", table.SheetCount + 1);

            try
            {
                table.CreateSheet(sheetIndex);
                table.SetValuesForCellsAt(new TableIndex(sheetIndex),
                                          new List <List <string> >
                {
                    new ()
                    {
                        "Проверка", "Вставки"
                    },
                    new ()
                    {
                        "Строковых", "Значений"
                    }
                });

                table.SetValuesForCellsAt(new TableIndex(sheetIndex, 3),
                                          new List <List <int> >
                {
                    new ()
                    {
                        10, 20
                    },
                    new ()
                    {
                        30, 40
                    }
                });
Esempio n. 10
0
        public int RowCount(SheetIndex index)
        {
            int?count = GetSpreadsheet().Sheets[index.Id].Properties.GridProperties.RowCount;

            return(count ?? throw new NonExistingIndexException());
        }
Esempio n. 11
0
 public void RenameSheet(SheetIndex index, string name)
 {
     _workbook.Worksheet(index.Name).Name = name;
     index.Name = name;
     Save();
 }
Esempio n. 12
0
 public void DeleteSheet(SheetIndex sheet)
 {
     _workbook.Worksheet(sheet.Name).Delete();
     Save();
 }
Esempio n. 13
0
 public void CreateSheet(SheetIndex index)
 {
     _workbook.Worksheets.Add(index.Name);
     Save();
 }
Esempio n. 14
0
 public int RowCount(SheetIndex index)
 {
     return(_workbook.Worksheet(index.Name).LastRowUsed().RowNumber());
 }
Esempio n. 15
0
 public int ColumnCount(SheetIndex index)
 {
     return(_workbook.Worksheet(index.Name).LastColumnUsed().ColumnNumber());
 }