MCPcopy
hub / github.com/davyxu/tabtoy / LoadDataTable

Function LoadDataTable

v3/compiler/tab_data.go:35–66  ·  view source on GitHub ↗
(filegetter helper.FileGetter, fileName, headerType, resolveHeaderType string, typeTab *model.TypeTable)

Source from the content-addressed store, hash-verified

33}
34
35func LoadDataTable(filegetter helper.FileGetter, fileName, headerType, resolveHeaderType string, typeTab *model.TypeTable) (ret []*model.DataTable, err error) {
36 file, err := filegetter.GetFile(fileName)
37 if err != nil {
38 return nil, errors.Wrap(err, fileName)
39 }
40
41 for _, sheet := range file.Sheets() {
42
43 tab := model.NewDataTable()
44 tab.HeaderType = headerType
45 tab.FileName = fileName
46 tab.SheetName = sheet.Name()
47
48 ret = append(ret, tab)
49
50 maxCol := LoadHeader(sheet, tab, resolveHeaderType, typeTab)
51
52 // 遍历所有数据行
53 for row := 0; ; row++ {
54
55 if sheet.IsRowEmpty(row, maxCol+1) {
56 break
57 }
58
59 // 读取每一行
60 readOneRow(sheet, tab, row)
61 }
62
63 }
64
65 return
66}

Callers 3

LoadIndexTableFunction · 0.85
LoadTypeTableFunction · 0.85
loadVariantTablesFunction · 0.85

Calls 7

NewDataTableFunction · 0.92
LoadHeaderFunction · 0.85
readOneRowFunction · 0.85
GetFileMethod · 0.65
SheetsMethod · 0.65
NameMethod · 0.65
IsRowEmptyMethod · 0.65

Tested by

no test coverage detected