--- Добавлено в 2025-04-26 17:11:19
Пока остановился на этом варианте ) Потом может дополню, если будет потребность.
Add(MainForm,4060584,539,189)
{
Width=1017
Height=690
Caption="Таблица мониторов"
BorderStyle=1
Point(onClose)
link(onCreate,13411267:doOpen,[])
link(onClose,13411267:doClose,[])
}
Add(Button,9429861,553,266)
{
Left=10
Top=10
Width=125
Caption="Добавить новый файл"
link(onClick,12479767:doExecute,[])
}
Add(ODialog,12479767,595,266)
{
Filter="Excel|*.xlsx"
link(onExecute,3595730:doWork,[])
}
Add(DS_SQLite,13411267,588,203)
{
Name="fromExcel"
FileName="MyDB.db"
link(onOpen,10856566:doExec,[])
}
Add(MTStrTbl,3086052,231,154)
{
Left=10
Top=40
Width=980
Height=417
Name="tabl"
Columns=#9:Партномер|6:Модель|21:Регулировка по высоте|16:Портретный режим|8:Описание|
ColorItems=0
Redaction=0
Grid=0
link(onClick,10638613:doSeparateMT,[(279,160)(279,202)])
}
Add(MST_DB,2969440,812,182)
{
MSTControl="tabl"
}
Add(DSC_Query,15295346,756,182)
{
SQL="SELECT\r\n [PartNumber], \r\n [Model], \r\n [Height_adjustment], \r\n [Portrait_mode], \r\n [Description]\r\nFROM\r\n [Serascer]\r\n;\r\n"
DSManager="fromExcel"
link(onQuery,2969440:doAddRow,[])
}
Add(DSC_Query,14013266,756,98)
{
SQL="SELECT\r\n"Количество записей в базе - " || COUNT(*)\r\nFROM\r\n [Serascer]\r\n;\r\n"
DSManager="fromExcel"
link(onQuery,4060584:doCaption,[(800,104)(800,66)(529,66)(529,195)])
}
Add(Hub,14561010,700,203)
{
InCount=2
OutCount=4
link(onEvent1,14013266:doQuery,[(725,209)(725,104)])
link(onEvent2,3674884:doClear,[(732,216)(732,146)])
link(onEvent3,15295346:doQuery,[(739,223)(739,188)])
link(onEvent4,15121271:doColAction,[])
}
Add(VBJScript,3595730,637,266)
{
@Hint=#16:Query SQL Server|
WorkPoints=#6:doWork|
EventPoints=#6:onRead|7:onClear|6:onStop|
Script=#10:Dim strOut|22:Sub doWork(Data,Index)|52: Set objExcel = CreateObject("Excel.Application")|52: Set objWorkbook = objExcel.Workbooks.Open (Data)|19: sys.onClear nil|4: |17: ' Лист1.Select|38: 'objExcel.Sheets("Итоговое").Select|43: objExcel.ActiveSheet.Cells(1, 1).Select |5: |33: intRow = 2 ' начальная строка|4: |51: Do Until objExcel.Cells(intRow,1).Value = "" |121: strOut = "INSERT OR IGNORE INTO [Serascer] VALUES(" & "'" & objExcel.Cells(intRow, 1).Value & "'" & "," & "'" &_ |61: objExcel.Cells(intRow, 3).Value & "'" & "," & "'" &_ |60: objExcel.Cells(intRow, 9).Value & "'" & "," & "'" &_|61: objExcel.Cells(intRow, 12).Value & "'" & "," & "'" &_|48: objExcel.Cells(intRow, 17).Value & "');"|26: sys.onRead strOut |27: intRow = intRow + 1|19: strOut = ""|8: Loop|4: |17: objExcel.Quit|22: sys.onStop nil |0:|7:End Sub|
UseName=0
link(onRead,4246386:doExec,[])
link(onStop,14561010:doEvent2,[(683,286)(683,216)])
}
Add(DSC_Exec,4246386,693,266)
{
DSManager="fromExcel"
}
Add(MST_ColAction,15121271,756,224)
{
Action=9
MinColWidth=140
MaxColWidth=1000
Index=-2
MSTControl="tabl"
}
Add(DSC_Exec,10856566,637,203)
{
SQL="CREATE TABLE IF NOT EXISTS "Serascer"(\r\n [PartNumber] CHAR(12) UNIQUE, \r\n [Model] CHAR(25), \r\n [Height_adjustment] CHAR(3), \r\n [Portrait_mode] CHAR(7), \r\n [Description] CHAR);"
DSManager="fromExcel"
link(onExec,14561010:doEvent1,[])
}
Add(MST_Clear,3674884,756,140)
{
MSTControl="tabl"
}
Add(Button,15445199,553,364)
{
Left=160
Top=10
Width=125
Caption="Поиск парт. номера"
link(onClick,4099803:doAdd,[])
}
Add(Edit,5217928,595,322)
{
Left=295
Top=10
Width=110
Text=""
}
Add(Button,2755710,553,462)
{
Left=420
Top=10
Width=125
Caption="Поиск модели"
link(onClick,6444111:doAdd,[])
}
Add(Edit,4529729,595,420)
{
Left=555
Top=10
Width=275
Text=""
}
Add(MST_FindText,10090767,714,392)
{
MSTControl="tabl"
}
Add(MT_AddData,4099803,595,364)
{
Count=1
Data=String()
link(onAdd,348769:doEvent1,[(653,370)(653,398)])
link(Data1,5217928:Text,[])
}
Add(MT_AddData,6444111,595,462)
{
Count=1
Data=String()
link(onAdd,348769:doEvent2,[(653,468)(653,405)])
link(Data1,4529729:Text,[])
}
Add(Hub,348769,679,392)
{
InCount=2
OutCount=1
link(onEvent1,10090767:doFindText,[])
}
Add(MT_MultiData,10638613,287,196)
{
Count=5
Point(Data)
Point(RemaindData)
link(onData1,11671383:doText,[(331,202)(331,321)(303,321)(303,440)])
link(onData2,13541262:doText,[(338,209)(338,440)])
link(onData5,4314303:doEvent1,[(373,230)(373,440)])
link(Data,3086052:Select,[(293,191)(237,191)])
}
Add(Edit,11671383,315,434)
{
Left=10
Top=485
Width=110
Enabled=1
Text=""
ReadOnly=0
}
Add(Label,5413725,315,392)
{
Left=10
Top=465
Width=67
Height=17
Caption="Парт. номер"
}
Add(Label,8424378,441,392)
{
Left=10
Top=510
Width=54
Height=17
Caption="Описание"
}
Add(Edit,13541262,357,434)
{
Left=130
Top=485
Width=275
Enabled=1
Text=""
ReadOnly=0
}
Add(Label,1608245,357,392)
{
Left=130
Top=465
Width=43
Height=17
Caption="Модель"
}
Add(Memo,2378169,441,434)
{
Left=10
Top=530
Width=980
Height=110
ScrollBars=2
ReadOnly=0
}
Add(Hub,4314303,399,434)
{
link(onEvent1,2378169:doClear,[(431,440)(431,447)])
link(onEvent2,2378169:doAdd,[(431,447)(431,440)])
}