OO-Snippets: Filter

Commons

Keywords
LanguageooRexx
ApplicationCalc
AuthorsMichael Hinz (initial)
Supported Versions
Supported OSWin32  
QuestionHow can i use a build in filter
Answer

Code-Snippet-Listing (snippet-source)

oDesktop         = UNO.createDesktop()   
xComponentLoader = oDesktop~XDesktop~XComponentLoader  
                                                      

url = "private:factory/scalc"
xCalcComponent = xComponentLoader~loadComponentFromURL(url, "_blank", 0, .UNO~noProps)



xDocument = xCalcComponent~XSpreadSheetDocument
xSheet = xDocument~getSheets~XIndexAccess~getByIndex(0)~XSpreadSheet


CALL UNO.setCell xSheet, 0, 0, "1"
CALL UNO.setCell xSheet, 0, 1, "2"
CALL UNO.setCell xSheet, 0, 2, "3"
CALL UNO.setCell xSheet, 0, 3, "4"
CALL UNO.setCell xSheet, 0, 4, "5"
CALL UNO.setCell xSheet, 0, 5, "6"
CALL UNO.setCell xSheet, 0, 6, "7"
CALL UNO.setCell xSheet, 0, 7, "8"


CALL syssleep 4


myRange = xSheet~XCellRange~getCellRangeByName("A1:A7")


xFilter = myRange~XSheetFilterable
xFilterDesc = xFilter~createFilterDescriptor(.true)


CALL UNO.loadClass "com.sun.star.sheet.TableFilterField"

aFilterFields = bsf.createArray(.UNO~TableFilterField, 1)

aFilterFields[1] = .UNO~TableFilterField~new
aFilterFields[1]~Field = 0
aFilterFields[1]~IsNumeric = true
aFilterFields[1]~Operator = bsf.getConstant("com.sun.star.sheet.FilterOperator","GREATER_EQUAL")
aFilterFields[1]~NumericValue = 5

xFilterDesc~setFilterFields(aFilterFields)
xFilterDesc~xPropertySet~setPropertyValue("ContainsHeader", box("boolean", .false))
xFilter~filter(xFilterDesc)

::requires UNO.CLS


Changelog

DateUserModification

and