Вверх ↑
Этот топик читают: Гость
Ответов: 254
Рейтинг: 6
#1: 2017-07-27 07:55:09 ЛС | профиль | цитата
Добрый день! Подскажите пожалуйста

Есть таблица с двумя столбцами

столбец1 столбец2

значение 1 параметр 1

значение 2 параметр 2

значение 3 параметр 3

Каким образом можно выполнить сортировку первого столбца и уже потом из отсортированного получить параметры второго столбца в строку?
карма: 0

0
vip
#1.1контекстная реклама от партнеров
Ответов: 8887
Рейтинг: 823
#2: 2017-07-27 10:25:00 ЛС | профиль | цитата
Medvedoc,
таблица


Add(MainForm,2953706,154,126)
{
link(onCreate,5998486:doWork1,[])
}
Add(StringTable,15511019,294,140)
{
Left=60
Width=320
Height=260
Columns=#12:Значение=145|12:Параметр=145|
Grid=0
Point(doSort)
Point(doSortDigit)
}
Add(Button,10277566,154,231)
{
Left=5
Top=200
Width=50
Caption="Текст"
Data=Integer(1)
link(onClick,8762814:doData,[])
}
Add(Button,9408746,154,273)
{
Left=5
Top=230
Width=50
Caption="Число"
Data=Integer(1)
link(onClick,4410104:doData,[])
}
Add(Button,6946078,154,168)
{
Left=5
Top=15
Width=50
Caption="Новые"
link(onClick,5998486:doWork2,[(193,174)(193,153)])
}
Add(RadioButton,8355176,210,175)
{
Left=5
Top=130
Selected=0
Caption="Col#1"
}
Add(RadioButton,11791472,217,182)
{
Left=5
Top=150
Caption="Col#2"
}
Add(DoData,8762814,238,231)
{
link(onEventData,15511019:doSort,[(277,237)(277,181)])
link(Data,12797600:Var3,[(244,222)])
}
Add(DoData,4410104,217,273)
{
link(onEventData,15511019:doSortDigit,[(284,279)(284,188)])
link(Data,12797600:Var2,[])
}
Add(GetDataEx,12797600,217,217)
{
link(Data,11791472:Selected,[])
}
Add(MultiElement,5998486,238,140)
{
link(onEvent1,15511019:doAdd,[])
link(onEvent2,15511019:doClear,[])
}
BEGIN_SDK
Add(EditMulti,6789240,21,21)
{
EventCount=2
WorkCount=2
link(doWork1,5305582:doEvent1,[(39,27)(39,41)])
link(doWork2,4347618:doWork2,[(32,34)(32,69)])
}
Add(For,4223134,112,70)
{
End=999
link(onEvent,7664527:doRandom,[(158,76)(158,97)])
}
Add(Hub,11469070,84,63)
{
link(onEvent1,6789240:onEvent2,[(158,69)(158,34)])
link(onEvent2,4223134:doFor,[])
}
Add(Random,7664527,168,91)
{
Max=9999
link(onRandom,11510202:doRandom,[])
}
Add(Random,11510202,217,91)
{
Min=1000
Max=999999
link(onRandom,6181058:doString,[])
}
Add(FormatStr,6181058,266,91)
{
Mask="%1;%2"
link(onFString,6789240:onEvent1,[(305,97)(305,27)])
link(Str1,7664527:Random,[(272,82)(258,82)(258,131)(174,131)])
}
Add(Hub,5305582,49,35)
{
link(onEvent1,7664527:doRandomize,[(151,41)(151,104)])
link(onEvent2,4347618:doWork1,[(74,48)])
}
Add(HubEx,4347618,70,63)
{
link(onEvent,11469070:doEvent1,[])
}
END_SDK

карма: 19

0
Ответов: 497
Рейтинг: 16
#3: 2017-07-27 11:52:35 ЛС | профиль | цитата
Леонид,
Medvedoc писал(а):
и уже потом из отсортированного получить параметры второго столбца в строку?
пропустили


Add(MainForm,5355288,476,182)
{
Height=325
link(onCreate,5998486:doWork1,[])
}
Add(StringTable,15511019,616,196)
{
Left=60
Width=320
Height=260
Columns=#12:Значение=145|12:Параметр=145|
Grid=0
Point(doSort)
Point(doSortDigit)
Point(Matrix)
link(onClick,5492595:doRead,[(660,202)(660,293)(618,293)(618,384)])
}
Add(Button,10277566,476,287)
{
Left=5
Top=200
Width=50
Caption="Текст"
Data=Integer(1)
link(onClick,8762814:doData,[])
}
Add(Button,9408746,476,329)
{
Left=5
Top=230
Width=50
Caption="Число"
Data=Integer(1)
link(onClick,4410104:doData,[])
}
Add(Button,6946078,476,224)
{
Left=5
Top=15
Width=50
Caption="Новые"
link(onClick,5998486:doWork2,[(515,230)(515,209)])
}
Add(RadioButton,8355176,532,231)
{
Left=5
Top=130
Selected=0
Caption="Col#1"
}
Add(RadioButton,11791472,539,238)
{
Left=5
Top=150
Caption="Col#2"
}
Add(DoData,8762814,560,287)
{
link(onEventData,15511019:doSort,[(599,293)(599,237)])
link(Data,12797600:Var3,[(566,278)])
}
Add(DoData,4410104,539,329)
{
link(onEventData,15511019:doSortDigit,[(606,335)(606,244)])
link(Data,12797600:Var2,[])
}
Add(GetDataEx,12797600,539,273)
{
link(Data,11791472:Selected,[])
}
Add(MultiElement,5998486,560,196)
{
link(onEvent1,15511019:doAdd,[])
link(onEvent2,15511019:doClear,[])
}
BEGIN_SDK
Add(EditMulti,6789240,21,21)
{
EventCount=2
WorkCount=2
link(doWork1,5305582:doEvent1,[(39,27)(39,41)])
link(doWork2,4347618:doWork2,[(32,34)(32,69)])
}
Add(For,4223134,112,70)
{
End=999
link(onEvent,7664527:doRandom,[(158,76)(158,97)])
}
Add(Hub,11469070,84,63)
{
link(onEvent1,6789240:onEvent2,[(158,69)(158,34)])
link(onEvent2,4223134:doFor,[])
}
Add(Random,7664527,168,91)
{
Max=9999
link(onRandom,11510202:doRandom,[])
}
Add(Random,11510202,217,91)
{
Min=1000
Max=999999
link(onRandom,6181058:doString,[])
}
Add(FormatStr,6181058,266,91)
{
Mask="%1;%2"
link(onFString,6789240:onEvent1,[(305,97)(305,27)])
link(Str1,7664527:Random,[(272,82)(258,82)(258,131)(174,131)])
}
Add(Hub,5305582,49,35)
{
link(onEvent1,7664527:doRandomize,[(151,41)(151,104)])
link(onEvent2,4347618:doWork1,[(74,48)])
}
Add(HubEx,4347618,70,63)
{
link(onEvent,11469070:doEvent1,[])
}
END_SDK
Add(MatrixRW,5492595,630,378)
{
X=1
link(onRead,11564608:doText,[])
link(Matrix,15511019:Matrix,[])
}
Add(Label,11564608,728,378)
{
Left=5
Top=265
Width=375
}

карма: 1
        ]  
0
Ответов: 8887
Рейтинг: 823
#4: 2017-07-27 12:30:39 ЛС | профиль | цитата
RAWY_EX писал(а):
пропустили
А вот и нет! Задача поставлена не корректно, если следовать буквально, то получится это:
++


Add(MainForm,5355288,217,98)
{
Height=325
link(onCreate,5998486:doWork1,[])
}
Add(StringTable,15511019,357,112)
{
Left=60
Width=320
Height=260
Columns=#12:Значение=145|12:Параметр=145|
Grid=0
Point(doSort)
Point(doSortDigit)
Point(Matrix)
Point(Strings)
}
Add(Button,10277566,217,203)
{
Left=5
Top=155
Width=50
Caption="Текст"
Data=Integer(1)
link(onClick,8762814:doData,[])
}
Add(Button,9408746,217,245)
{
Left=5
Top=185
Width=50
Caption="Число"
Data=Integer(1)
link(onClick,4410104:doData,[])
}
Add(Button,6946078,217,140)
{
Left=5
Top=15
Width=50
Caption="Новые"
link(onClick,5998486:doWork2,[(256,146)(256,125)])
}
Add(RadioButton,8355176,273,147)
{
Left=5
Top=85
Selected=0
Caption="Col#1"
}
Add(RadioButton,11791472,280,154)
{
Left=5
Top=105
Caption="Col#2"
}
Add(DoData,8762814,301,203)
{
link(onEventData,15511019:doSort,[(340,209)(340,153)])
link(Data,12797600:Var3,[(307,194)])
}
Add(DoData,4410104,280,245)
{
link(onEventData,15511019:doSortDigit,[(347,251)(347,160)])
link(Data,12797600:Var2,[])
}
Add(GetDataEx,12797600,280,189)
{
link(Data,11791472:Selected,[])
}
Add(MultiElement,5998486,301,112)
{
link(onEvent1,15511019:doAdd,[])
link(onEvent2,15511019:doClear,[])
}
BEGIN_SDK
Add(EditMulti,6789240,21,21)
{
EventCount=2
WorkCount=2
link(doWork1,5305582:doEvent1,[(39,27)(39,41)])
link(doWork2,4347618:doWork2,[(32,34)(32,69)])
}
Add(For,4223134,112,70)
{
End=999
link(onEvent,7664527:doRandom,[(158,76)(158,97)])
}
Add(Hub,11469070,84,63)
{
link(onEvent1,6789240:onEvent2,[(158,69)(158,34)])
link(onEvent2,4223134:doFor,[])
}
Add(Random,7664527,168,91)
{
Max=9999
link(onRandom,11510202:doRandom,[])
}
Add(Random,11510202,217,91)
{
Min=1000
Max=999999
link(onRandom,6181058:doString,[])
}
Add(FormatStr,6181058,266,91)
{
Mask="%1;%2"
link(onFString,6789240:onEvent1,[(305,97)(305,27)])
link(Str1,7664527:Random,[(272,82)(258,82)(258,131)(174,131)])
}
Add(Hub,5305582,49,35)
{
link(onEvent1,7664527:doRandomize,[(151,41)(151,104)])
link(onEvent2,4347618:doWork1,[(74,48)])
}
Add(HubEx,4347618,70,63)
{
link(onEvent,11469070:doEvent1,[])
}
END_SDK
Add(ArrayEnum,15636100,378,196)
{
link(onItem,15233048:doSplit,[])
link(onEndEnum,8599191:doData,[(417,209)(417,258)])
link(Array,15511019:Strings,[])
}
Add(MultiStrData,15233048,427,196)
{
link(onPart2,14239661:doStrCatDlm,[(466,209)(466,202)])
}
Add(Button,10339965,217,287)
{
Left=5
Top=220
Width=50
Caption="Col#2"
link(onClick,7322815:doEvent1,[])
}
Add(Edit,587533,518,252)
{
Top=262
Width=384
Height=25
Align=4
}
Add(Hub,7322815,280,287)
{
link(onEvent1,14239661:doClear,[(466,293)(466,209)])
link(onEvent2,15636100:doEnum,[(354,300)(354,202)])
}
Add(StrCatDelim,14239661,476,196)
{
Delimiter="#"
Point(doClear)
link(Str2,16452219:Var3,[(489,187)(496,187)(496,243)])
}
Add(DoData,8599191,476,252)
{
link(onEventData,587533:doText,[])
link(Data,16452219:Var2,[])
}
Add(GetDataEx,16452219,476,238)
{
link(Data,14239661:Result,[])
}


карма: 19

0
Ответов: 497
Рейтинг: 16
#5: 2017-07-27 12:46:01 ЛС | профиль | цитата
Леонид писал(а):
то получится это:

тогда уж так


Add(StringTable,15511019,616,196)
{
Left=60
Width=320
Height=260
Columns=#12:Значение=145|12:Параметр=145|
Grid=0
Point(doSort)
Point(doSortDigit)
Point(Matrix)
link(onClick,15498939:doEvent1,[])
}
Add(Button,10277566,476,287)
{
Left=5
Top=200
Width=50
Caption="Текст"
Data=Integer(1)
link(onClick,8762814:doData,[])
}
Add(Button,9408746,476,329)
{
Left=5
Top=230
Width=50
Caption="Число"
Data=Integer(1)
link(onClick,4410104:doData,[])
}
Add(Button,6946078,476,224)
{
Left=5
Top=15
Width=50
Caption="Новые"
link(onClick,5998486:doWork2,[(515,230)(515,209)])
}
Add(RadioButton,8355176,532,231)
{
Left=5
Top=130
Selected=0
Caption="Col#1"
}
Add(RadioButton,11791472,539,238)
{
Left=5
Top=150
Caption="Col#2"
}
Add(DoData,8762814,560,287)
{
link(onEventData,15511019:doSort,[(599,293)(599,237)])
link(Data,12797600:Var3,[(566,278)])
}
Add(DoData,4410104,539,329)
{
link(onEventData,15511019:doSortDigit,[(606,335)(606,244)])
link(Data,12797600:Var2,[])
}
Add(GetDataEx,12797600,539,273)
{
link(Data,11791472:Selected,[])
}
Add(MultiElement,5998486,560,196)
{
link(onEvent1,15511019:doAdd,[])
link(onEvent2,15511019:doClear,[])
}
BEGIN_SDK
Add(EditMulti,6789240,21,21)
{
EventCount=2
WorkCount=2
link(doWork1,5305582:doEvent1,[(39,27)(39,41)])
link(doWork2,4347618:doWork2,[(32,34)(32,69)])
}
Add(For,4223134,112,70)
{
End=10
link(onEvent,7664527:doRandom,[(158,76)(158,97)])
}
Add(Hub,11469070,84,63)
{
link(onEvent1,6789240:onEvent2,[(158,69)(158,34)])
link(onEvent2,4223134:doFor,[])
}
Add(Random,7664527,168,91)
{
Max=9999
link(onRandom,11510202:doRandom,[])
}
Add(Random,11510202,217,91)
{
Min=1000
Max=999999
link(onRandom,6181058:doString,[])
}
Add(FormatStr,6181058,266,91)
{
Mask="%1;%2"
link(onFString,6789240:onEvent1,[(305,97)(305,27)])
link(Str1,7664527:Random,[(272,82)(258,82)(258,131)(174,131)])
}
Add(Hub,5305582,49,35)
{
link(onEvent1,7664527:doRandomize,[(151,41)(151,104)])
link(onEvent2,4347618:doWork1,[(74,48)])
}
Add(HubEx,4347618,70,63)
{
link(onEvent,11469070:doEvent1,[])
}
END_SDK
Add(MatrixRW,5492595,630,378)
{
X=1
link(onRead,3474242:doStrCat,[])
link(Matrix,15511019:Matrix,[])
link(Y,10466296:Position,[(657,366)(619,366)(619,422)(580,422)])
}
Add(Label,11564608,742,378)
{
Left=5
Top=265
Width=375
}
Add(StrCat,3474242,686,378)
{
Point(doClear)
link(onStrCat,11564608:doText,[])
link(Str1,3474242:Result,[(692,366)(680,366)(680,422)(692,422)])
}
Add(For,10466296,574,378)
{
IncludeEnd=1
link(onEvent,5492595:doRead,[])
link(End,15511019:Count,[(587,313)(622,313)])
}
Add(Hub,15498939,665,196)
{
link(onEvent1,3474242:doClear,[(683,202)(683,391)])
link(onEvent2,10466296:doFor,[(691,209)(691,297)(562,297)(562,384)])
}

карма: 1
        ]  
0
Ответов: 16884
Рейтинг: 1239
#6: 2017-07-27 15:50:52 ЛС | профиль | цитата
Medvedoc писал(а):
Есть таблица с двумя столбцами

А почему никто не спросит у ТС : откуда родится эта таблица ?
Может быть и не нужно (если она уже ЕСТЬ) её сортировать - может её сразу создать уже отсортированной ?
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 8887
Рейтинг: 823
#7: 2017-07-27 16:49:09 ЛС | профиль | цитата
RAWY_EX, хрен редьки не слаще
Tad, сегодня я не дежурный экстрасенс
карма: 19

0
Ответов: 16884
Рейтинг: 1239
#8: 2017-07-27 19:26:09 ЛС | профиль | цитата
Леонид писал(а):
сегодня я не дежурный экстрасенс
Так какого вы тут ?

Редактировалось 2 раз(а), последний 2017-07-27 19:27:54
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 254
Рейтинг: 6
#9: 2017-07-28 06:20:22 ЛС | профиль | цитата
Спасибо ребята! Все получилось
RAWY_EX, пример очень подошел кстати.



Add(MainForm,5355288,21,21)
{
Width=730
Height=429
}
Add(StringTable,15511019,231,168)
{
Left=60
Width=320
Height=260
Columns=#12:Значение=145|12:Параметр=145|
Grid=0
Point(doSort)
Point(doSortDigit)
Point(Matrix)
Point(Strings)
}
Add(Button,10277566,112,182)
{
Left=5
Top=155
Width=50
Caption="Текст"
Data=Integer(1)
link(onClick,8762814:doData,[])
}
Add(Button,9408746,112,224)
{
Left=5
Top=185
Width=50
Caption="Число"
Data=Integer(1)
link(onClick,4410104:doData,[])
}
Add(Button,6946078,126,119)
{
Left=5
Top=15
Width=50
Caption="Новые"
link(onClick,14265151:doString,[])
}
Add(ArrayEnum,15636100,252,245)
{
Type=1
link(onItem,15233048:doSplit,[(292,251)(292,223)])
link(onEndEnum,8599191:doData,[(291,258)(291,307)])
link(Array,15511019:Strings,[])
}
Add(MultiStrData,15233048,301,217)
{
link(onPart2,14239661:doStrCatDlm,[])
}
Add(Button,10339965,154,280)
{
Left=5
Top=220
Width=50
Caption="Col#2"
link(onClick,7322815:doEvent1,[])
}
Add(Edit,587533,484,301)
{
Top=365
Width=714
Height=25
Align=4
link(onChange,15975569:doHashsum,[])
}
Add(Hub,7322815,203,280)
{
link(onEvent1,14239661:doClear,[(342,286)(342,237)])
link(onEvent2,15636100:doEnum,[(242,293)(242,251)])
}
Add(StrCatDelim,14239661,350,224)
{
Point(doClear)
link(Str2,16452219:Var3,[(363,208)(370,208)(370,292)])
}
Add(DoData,8599191,350,301)
{
link(onEventData,7654364:doValue,[])
link(Data,16452219:Var2,[])
}
Add(GetDataEx,16452219,350,287)
{
link(Data,14239661:Result,[])
}
Add(FormatStr,14265151,168,119)
{
Mask="%1;%2"
link(onFString,15511019:doAdd,[(216,125)(216,174)])
link(Str1,10574932:String,[(174,110)(153,110)])
link(Str2,759483:Text,[(181,107)(195,107)])
}
Add(ComboBox,10574932,140,56)
{
Left=425
Top=20
Height=21
Strings=#5:login|5:phone|4:text|6:sender|6:return|9:timestamp|
}
Add(Edit,759483,189,63)
{
Left=555
Top=15
}
Add(DoData,4410104,161,224)
{
link(onEventData,15511019:doSortDigit,[(200,230)(200,216)])
}
Add(DoData,8762814,161,182)
{
link(onEventData,15511019:doSort,[(200,188)(200,209)])
}
Add(Memory,7654364,395,301)
{
link(onData,6758690:doStrCat,[])
}
Add(Hashsum,15975569,526,301)
{
link(onResult,13853358:doText,[])
}
Add(Edit,13853358,568,301)
{
Left=1
Top=306
Width=705
}
Add(StrCat,6758690,442,301)
{
Str2="key"
link(onStrCat,587533:doText,[])
link(Str1,7654364:Value,[(448,289)(434,289)(434,344)(401,344)])
}

карма: 0

0
Ответов: 497
Рейтинг: 16
#10: 2017-07-28 07:36:14 ЛС | профиль | цитата
что это такое?


Add(Button,10277566,455,266)
{
Left=5
Top=155
Width=50
Caption="Текст"
Data=Integer(1)
link(onClick,8762814:doData,[])
}
Add(Button,9408746,455,308)
{
Left=5
Top=185
Width=50
Caption="Число"
Data=Integer(1)
link(onClick,4410104:doData,[])
}
Add(DoData,4410104,504,308)
{
}
Add(DoData,8762814,504,266)
{
}

и хоть убейте не пойму зачем читать все а потом разделять? почему сразу не читать нужный столбец
карма: 1
        ]  
0
Ответов: 16884
Рейтинг: 1239
#11: 2017-07-28 07:47:07 ЛС | профиль | цитата
RAWY_EX, Леонид, три ха-ха.
RAWY_EX писал(а):
хоть убейте не пойму зачем читать все а потом разделять?
Пути Medvedoc неисповедимы...
А чё ещё не спросил: А зачем сортировать ?

Редактировалось 2 раз(а), последний 2017-07-28 07:58:29
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 497
Рейтинг: 16
#12: 2017-07-28 08:37:30 ЛС | профиль | цитата
Tad писал(а):
А зачем сортировать ?

это тоже. я в прошлой теме бросал с formatstr готовое решение зачем опять велосипед...

--- Добавлено в 2017-07-28 09:04:44

почему MD5 верхний регистр?

Редактировалось 5 раз(а), последний 2017-07-28 09:04:44
карма: 1
        ]  
0
12
Сообщение
...
Прикрепленные файлы
(файлы не залиты)