Sort on two sortTypes
Randy Hengst
iowahengst at mac.com
Sat Apr 8 16:13:58 EDT 2017
Mike, thank you. I didn’t try the function you mentioned… to be honest, it would take me a bit to get my head around it.
be well,
randy
Randy Hengst
www.classroomFocusedSoftware.com
> On Apr 8, 2017, at 1:17 PM, Mike Bonner via use-livecode <use-livecode at lists.runrev.com> wrote:
>
> do 2 consecutive sorts..
> First by item 3
> then by item 2 datetime
>
> Alternatively, you might be able to use a function sort to do it, but I'd
> have to really think about how to accomplish it that way, and its too early.
>
> Basically though, a sort using a function looks like the following example..
> (if the lines contain an item like a hex code for example, 00 to ff, one
> could use a function to convert the value to a decimal and then return the
> decimal value as the numeric sort key)
>
> sort lines of <container> ascending numeric by myFunction(each)
>
> function myFunction pVar
> return baseconvert(item 3 of pvar,16,10)
> end myFunction
>
> This would return the decimal value of the hex and use the value as the
> sort key. Like I say, since you're using two data types for your sort, it
> would require some pondering to figure out the best way to normalize the
> data and generate the proper sort key, but it should be possible. Still,
> much easier to just do two consecutive sorts.
>
>
> On Sat, Apr 8, 2017 at 11:45 AM, Randy Hengst via use-livecode <
> use-livecode at lists.runrev.com> wrote:
>
>> Hi All,
>>
>> I’m working an app to facilitate the development of student class
>> schedules.
>>
>> Right now there are three items for each course that I’d like to sort in
>> various ways: CourseName, Time, Days. The information is placed in that
>> order in a field for display.
>>
>> It’s easy to sort on any one of the items. For example….
>> sort lines of field "FIRSTyear_FALL" by item 1 of each
>>
>> sort lines of field "FIRSTyear_FALL" dateTime by item 2 of each
>>
>> sort lines of field "FIRSTyear_FALL" by item 3 of each
>>
>>
>> But I can’t figure out how to sort first on item 3, Days and then by item
>> 2, Time. My goal is sort by matching Days and then by time in ascending
>> order. The courses meeting on the same day would be grouped together by
>> time earliest to latest. A sort does take place, but it’s text. I’ve not
>> figured out how/where to place the dateTime sortType when combining a sort
>> on item 3 and item 2.
>>
>> Here’s the basic line of script… where does “dateTime” go? I’ve tried
>> placing it in all the points of the line that I can think of….
>> sort lines of field "FIRSTyear_FALL" by item 3 of each & item 2 of each
>>
>> The dictionary under “Sort Container” suggests what I want to do is
>> possible:
>> The sort container command is a stable sort. This means that if the
>> sortKey for two items or lines is the same, sorting does not change their
>> order, so you can do two successive sorts to create subcategories within
>> the major sort categories.
>> Tip: To create a custom sort order, use the each keyword to pass each line
>> or item to a custom function. The value returned by the function is used as
>> the sort key for that line or item. It is not currently possible to debug
>> custom sort functions, and doing so could make the IDE unstable. It is
>> recommended to use logging messages instead.
>> The information in the “LiveCode Resource Center” doesn’t include an
>> example of sorting on two criteria.
>>
>> Thanks in advance for any thoughts you can share.
>>
>> be well,
>> randy
>>
>> Randy Hengst
>> www.classroomFocusedSoftware.com
>>
>>
>>
>> _______________________________________________
>> use-livecode mailing list
>> use-livecode at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your
>> subscription preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
More information about the use-livecode
mailing list