Add(MainForm,9097428,91,112)
{
Width=742
Height=454
Point(onClose)
link(onCreate,1370606:doEnum,[])
}
Add(StrList,13965242,140,63)
{
Strings=#9:col1;col2|10:йцукенг;11|5:цук;5|6:фыва;8|9:йцукенг;4|9:йцукенг;5|6:фыва;3|8:ячсми;22|9:ячсми;115|10:пролдж;265|9:йцукен;44|9:пролдж;25|7:фыва;74|
}
Add(StringTable,14508183,497,210)
{
Left=375
Top=40
Width=285
Height=225
Columns=#7:Позиция|10:Количество|
}
Add(StringTable,9725226,273,126)
{
Left=50
Top=40
Width=285
Height=225
Columns=#11:позиция=100|8:колич=50|
Point(ExtCmp)
Point(doSortExtCmp)
}
Add(ArrayEnum,1370606,154,126)
{
link(onItem,9725226:doAdd,[])
link(onEndEnum,3893125:doData,[(200,139)(200,146)])
link(Array,13965242:Array,[])
}
Add(FormatStr,13876708,140,210)
{
DataCount=1
Mask="$data = @'\r\n%1\r\n'@\r\n\r\n$csvData = $data | ConvertFrom-Csv -Delimiter ';' \r\n$results = @{}\r\nforeach ($row in $csvData) {\r\n $key = $row.col1\r\n $value = [int]$row.col2\r\n if ($results.ContainsKey($key)) {\r\n $results[$key] += $value\r\n } else {\r\n $results[$key] = $value\r\n }\r\n}\r\n\r\n$outputData = @()\r\n\r\nforeach ($key in $results.Keys) {\r\n $outputData += [PSCustomObject]@{\r\n 'Позиция' = $key\r\n 'Количество' = $results[$key]\r\n }\r\n}\r\n\r\n$outputData | ConvertTo-Csv -Delimiter ';' -NoTypeInformation\r\n"
link(onFString,7233623:doConsoleExec,[])
link(Str1,13965242:Text,[])
}
Add(WinExec,7233623,189,196)
{
FileName="powershell"
Mode=0
Point(onConsoleResult)
Point(onConsoleError)
Point(doConsoleExec)
link(onConsoleResult,7509309:doWork2,[])
link(onConsoleError,7509309:doWork3,[(242,223)])
}
Add(Charset,16279033,266,210)
{
link(onCharset,357196:doEnum,[])
}
Add(HubEx,7509309,238,210)
{
link(onEvent,16279033:doCharset,[])
}
Add(DoData,3893125,210,140)
{
Data=Integer(0)
link(onEventData,9725226:doDelete,[])
}
Add(Button,1690297,91,210)
{
Left=275
Top=300
Width=155
Caption="посчитать"
link(onClick,13876708:doString,[])
}
Add(Str_Enum,357196,336,210)
{
Delimiter="\n"
link(onEnum,10732955:doReplace,[])
link(onEndEnum,10779511:doData,[(389,223)(389,230)])
}
Add(DoData,10779511,448,224)
{
Data=Integer(0)
link(onEventData,14508183:doDelete,[])
}
Add(Replace,10732955,392,210)
{
SubStr="""
link(onReplace,14508183:doAdd,[])
}
--- Добавлено в 2025-07-27 20:12:40
И ещё один
Add(MainForm,9097428,91,112)
{
Width=742
Height=454
Point(onClose)
link(onCreate,1370606:doEnum,[])
}
Add(StrList,13965242,147,63)
{
Strings=#10:йцукенг;11|5:цук;5|6:фыва;8|9:йцукенг;4|9:йцукенг;5|6:фыва;3|8:ячсми;22|9:ячсми;115|10:пролдж;265|9:йцукен;44|9:пролдж;25|7:фыва;74|
}
Add(StringTable,14508183,217,189)
{
Left=375
Top=40
Width=285
Height=225
Columns=#7:Позиция|10:Количество|
}
Add(StringTable,9725226,217,126)
{
Left=50
Top=40
Width=285
Height=225
Columns=#11:позиция=100|8:колич=50|
Point(ExtCmp)
Point(doSortExtCmp)
}
Add(ArrayEnum,1370606,161,126)
{
link(onItem,9725226:doAdd,[])
link(Array,13965242:Array,[])
}
Add(VBJScript,279962,147,189)
{
@Hint=#7:SendKey|
WorkPoints=#6:onWork|
EventPoints=#3:out|
DataPoints=#3:csv|
Script=#23:Sub doWork(Data, Index)|42:Dim dictSum, arrLines, i, strKey, strValue|50:Set dictSum = CreateObject("Scripting.Dictionary")|36:arrLines = Split(sys.csv, vbNewLine)|31:For i = 0 To UBound(arrLines)-1|39: arrFields = Split(arrLines(i), ";")|25: strKey = arrFields(0)|27: strValue = arrFields(1)|34: If dictSum.Exists(strKey) Then|58: dictSum(strKey) = dictSum(strKey) + CDbl(strValue)|8: Else|42: dictSum.Add strKey, CDbl(strValue)|10: End If|4:Next|31:For Each strKey In dictSum.Keys|42: sys.out strKey & ";" & dictSum(strKey)|4:Next|7:End Sub|
UseName=0
link(out,14508183:doAdd,[])
link(csv,13965242:Text,[])
}
Add(Button,1690297,91,189)
{
Left=275
Top=300
Width=155
Caption="посчитать"
link(onClick,279962:onWork,[])
}