0 / 0 / 0
Регистрация: 29.07.2012
Сообщений: 27

Каким Образом Можно Сделать Сортировку Коллекции

27.05.2013, 15:13. Показов 10762. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Многоуважаемые программисты!!! :(
Подскажите каким образом можно сделать сортировку коллекции документов по данному коду...
Производится поиск по базе по выбранному диапазону дат С - ПО и выгружается в Excel


LotusScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    searchStr$ = {(Form = "invoice") | (TypDoc = "177-СЧЕТ НА ОПЛАТУ") | (TypDoc = "СЧЕТ НА ОПЛАТУ") | (TypeDoc = "invoice") & (Date >= [} & bDT.DateOnly & {]) & (Date <= [} & eDT.DateOnly & {]) & (Trash = "")}
Set offCL = offDB.Search( searchStr$, Nothyng, 0 )
Set offDOC = offCL.GetFirstDocument
While Not ( offDOC Is Nothyng )
 
wb.Application.Range({A} & Trim(CStr(row))).Value = offDOC.punkt(0)
wb.Application.Range({B} & Trim(CStr(row))).Value = offDOC.punktDescription(0)
wb.Application.Range({C} & Trim(CStr(row))).Value = offDOC.FROMORG(0)
wb.Application.Range({D} & Trim(CStr(row))).Value = offDOC.Info(0)
wb.Application.Range({E} & Trim(CStr(row))).Value = offDOC.date(0)
wb.Application.Range({F} & Trim(CStr(row))).Value = offDOC.Summa(0)
row = row + 1
 
Set offDOC = offCL.GetNextDocument( offDOC )
Wend
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.05.2013, 15:13
Ответы с готовыми решениями:

Каким образом можно получить курсы валют с Rbc.ru?
Нужно получить курсы валют нал, цб рф и т.д... Как это сделать? RSS ленты я что-то не нашел(

Каким образом можно сделать.
Я описываю WndProc из класса. static WndProc(HWND,UINT,WPARAM,LPARAM); Но никак не могу сделать input с клавиатуры. Чтобы...

Каким образом можно сделать описание файла?
Доброе время суток! Возникла проблема, если можете помогите. Мы писали Сервер-Клиент, Клиент писался на RAD Studio а сервер писали на...

8
0 / 0 / 0
Регистрация: 17.10.2008
Сообщений: 506
27.05.2013, 15:19
Искать нужные данные по вью getAllEntrysByKey, где они отсортированы нужным образом.

Написать свою класс коллекцию и сортировать в ней данные

что то типа того:


Code
1
2
3
4
5
6
7
8
9
Class myClass
punkt as string
punktDescription as string
FROMORG as string
End Class
 
Class arrMyClass
arr() as myClass
End Class
0
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 2,124
27.05.2013, 15:36
Сортировать Excelем:

LotusScript
1
2
3
        Set wapp = CreateObject("Excel.Application") - wapp это объект Excel
wapp.ActiveSheet.Columns("A:AB").Select
wapp.Selection.Sort wapp.Range("A2"),1, , , , , , 0, 1, False, 1, , 0, ,
По моему это по возрастанию.
0
0 / 0 / 0
Регистрация: 29.07.2012
Сообщений: 27
27.05.2013, 15:48
Спасибо большое!!! буду пробовать варианты :(
0
0 / 0 / 0
Регистрация: 09.12.2012
Сообщений: 101
28.05.2013, 07:13
В классе SortCollection документы помещаются в массив, что бъет по памяти (обсуждалось ). Есть предложение использовать следующее
0
0 / 0 / 0
Регистрация: 29.07.2012
Сообщений: 27
28.05.2013, 16:38
Решил свою проблему таким способом :o


LotusScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
    Dim formula As String
Set curVIEW=curDB.GetView("PD")
formula = "SELECT Form = invoice & StatusName = Счет оплачен & date >= [" & bDT.DateOnly & "] & date <= [" & eDT.DateOnly & "]"
curVIEW.SelectionFormula = formula
curVIEW.Refresh
 
 
Set offDOC = curVIEW.GetFirstDocument
summ = 0
While Not ( offDOC Is Nothyng )
 
punkt$ = CStr(offDOC.punkt(0))
 
 
wb.Application.Range({A} & Trim(CStr(row))).Value = offDOC.punkt(0)
wb.Application.Range({B} & Trim(CStr(row))).Value = offDOC.punktDescription(0)
wb.Application.Range({C} & Trim(CStr(row))).Value = offDOC.FROMORG(0)
wb.Application.Range({D} & Trim(CStr(row))).Value = offDOC.Info(0)
wb.Application.Range({E} & Trim(CStr(row))).Value = offDOC.date(0)
wb.Application.Range({F} & Trim(CStr(row))).Value = offDOC.Summa(0)
wb.Application.Range({G} & Trim(CStr(row))).Value = offDOC.StatusName(0)
row = row + 1
summ = offDOC.Summa(0) + summ
Set offDOC = curVIEW.GetNextDocument( offDOC )
 
If punkt$ = offDOC.punkt(0) Then
Else
wb.Application.Range({E} & Trim(CStr(row))).Value = "Сумма"
wb.Application.Range({F} & Trim(CStr(row))).Value = summ
summ = 0
row = row + 1
End If
Wend
И отсортировал view по пунктам


LotusScript
1
2
3
4
p := @Explode(punkt;".");
txt := "";
@For( i:=1; i <= @Elements( p ); i := i + 1; txt := txt + @If(@IsNumber(@ToNumber(p[i]));@Repeat("0"; 2-@Length(p[i]));"") + p[i]);
txt
Спасибо большое за советы!
0
0 / 0 / 0
Регистрация: 27.10.2011
Сообщений: 2,124
28.05.2013, 16:52
dzheyzhi
Надеюсь эта вьюха служебная и больше нигде не используется, но такой способ на мой скромный взгляд - извращение...
Сортировать лучше не документы, а данные, которые потом пойдут в отчет, либо, в случае Excel сортировать уже результаты.
0
kpotrom
29.05.2013, 10:48
на мой взгляд в данном случае (при выводе результатов в Excel) есть два наиболее быстрых способа сортировки:
1. как сказал savl "Сортировать Excellем"
2. перегнать нужные данные в массив, отсортировать его и потом указанному диаппазону листа Excel присвоить получившийся массив

я как правило использую второй способ
да и к тому же поячеечный способ заполнения экселя более медленный, чем присвоение диаппазону массива
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.05.2013, 10:48
Помогаю со студенческими работами здесь

Каким образом можно сделать удобные окошки?
Добрый вечер, господа форумчане. Интересно узнать, с помощью каких средств можно сделать удобные окошки (как в Visual Studio, или VMware,...

Каким образом можно сделать выключение компютера С++
Появилась идея сделать интересную программу. Всё уже продумал кроме выключения ПК. То есть каким образом заставить ПК выключится после...

Каким образом можно сделать автоматическую загрузку файлов в SSRS
Всем доброго времени суток! Подскажите, пож-та, каким образом можно сделать автоматическую загрузку файлов в SSRS? Сейчас я захожу...

Сделать сортировку коллекции вместо создания новой коллекции с передачей IOrderedEnumerable<T>
Есть: SortableObservableCollection&lt;T&gt; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using...

Как задать усилителю коэффициент передачи не числом, а выражениям, каким образом это можно сделать
Необходимо задать усилителю коэффициент передачи не числом, а выражениям (фото), каким образом это можно сделать? Позиционность N известна,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

Новые блоги и статьи
Пишем адаптер для локального хранилища S3 на C#
stackOverflow 16.07.2025
Разработка современных приложений часто требует интеграции с объектными хранилищами, и Amazon S3 стал де-факто стандартом в этой области. Однако работа с облачными сервисами в процессе разработки. . .
Старые замки
kumehtar 16.07.2025
Смотрел тут фото, попались пара старых замков. И сразу бросилось в глаза из отличие. Например: Замок Бистон, в англии. Разрушенное сооружение. Но - не испорченное людьми, по крайней мере - на. . .
Java и Eclipse Store: Сверхбыстрые приложения с In-Memory DB
Javaican 15.07.2025
Eclipse Store — это микро-движок персистентности для Java, который позволяет хранить и извлекать нативные Java-объекты без необходимости преобразования данных или использования объектно-реляционного. . .
EmBitz, создание проекта, отладка, прошивка
locm 15.07.2025
Создание проекта для Blue Pill (STM32F103C8T6) в EmBitz 2. 30, написания кода blink, запуск отладки в ОЗУ, заливка релизной прошивки во flash используя ST-Link и др. . . .
Трассировка корутин Kotlin с OpenTelemetry
mobDevWorks 14.07.2025
Асинхронное программирование меняет правила игры, особенно когда речь заходит о трассировке операций. В Kotlin с его корутинами эта проблема приобретает особый оттенок, который я хотел бы детально. . .
Облачные приложения на Rust: руководство по архитектуре микросервисов
golander 13.07.2025
Когда я впервые взялся за проектирование облачной платформы для одного из наших клиентов, выбор стоял между привычными Go и Java. Но после нескольких месяцев разработки микросервисной системы,. . .
Как Node.js выполняет асинхронные операции
Reangularity 13.07.2025
Каждый раз, когда я рассказываю про Node. js, возникает один и тот же вопрос: "Как эта штука может быть быстрой, если JavaScript — однопоточный язык?" И это действительно кажется парадоксом. Ведь в. . .
Как писать чистый, тестируемый и качественный код на Python
py-thonny 12.07.2025
Помню свой первый проект на Python. Работал тогда быстро, грязно, лишь бы работало. Код был похож на запутанный клубок - переменные по одной букве, функции на 200 строк, комментарии отсутствовали как. . .
Blazor и контроллер сервопривода IoT Meadow Maple
Wired 11.07.2025
Я решил разобраться, как можно соединить современные веб-технологии с миром "железа". Интересная комбинация получилась из Blazor в качестве веб-интерфейса и микроконтроллера Meadow с его веб-сервером. . .
Генерация OpenQASM из кода Q#
EggHead 10.07.2025
Летом 2024-го я начал эксперименты с библиотекой Q# Bridge, и знаете что? Она оказалась просто находкой для тех, кто работает на стыке разных квантовых экосистем. Основная фишка этой библиотеки -. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru