serial SysMaskedQuery Default %Library.TMFormClass %Library.TMForm %TMLabel %TMLabel %TMLabel Sys.MaskedQuery %Library.String 1 %Library.String 1 %Library.String 1 %TMSpeedButton %TMSpeedButton %TMSpeedButton %TMSpeedButton %TMSpeedButton %TMSpeedButton %TMComboBox %TMColorDialog %TMCheckBox %TMCheckBox Sys.MaskedQuery.ColumnDef %TMFontDialog %TMGroupBox %TMGroupBox %TMLabel %TMLabel %TMPopupMenu %TMPopupMenu %TMMenuItem %TMMenuItem %TMMenuItem %TMMenuItem %TMMenuItem %TMMenuItem %TMMenuItem %TMShape %TMShape initvalue:%String cache 0 %Status document literal cache 0 document literal cache 0 document literal NrOfConditions:%Integer=3 cache 0 document literal Index:%Integer cache 0 %Library.TMCheckBox document literal Index:%Integer cache 0 %Library.TMWinControl document literal Index:%Integer cache 0 %Library.TMWinControl document literal Index:%Integer cache 0 %Library.Integer document literal Index:%Integer,Formatted:%Boolean cache 0 document literal Alignment:%Integer cache 0 document literal Label:%Library.TMLabel,Shape:%Library.TMLabel,CheckBox:%Library.TMCheckBox,Color:%Library.Integer cache 0 document literal Name:%String cache 0 document literal Size:%Integer cache 0 document literal Index:%Integer cache 0 document literal initvalue:%String cache 0 MApplication document literal initvalue:%String cache 0 %Library.Status document literal INTERFACE Set ..aCVT(..#cvtDataToInterfaceType,"CellValue")="Cellvalue is" Set ..aCVT(..#cvtDataToInterfaceType,"Expression")="Expression is" ; TYPE: INTERFACE -> DATA New Key,InterfaceVal Set Key="" For Set Key=$O(..aCVT(..#cvtDataToInterfaceType,Key)) Quit:(Key="") Do . Set InterfaceVal=..aCVT(..#cvtDataToInterfaceType,Key) . Set ..aCVT(..#cvtInterfaceToDataType,InterfaceVal)=Key ; OPERATOR: DATA -> INTERFACE Set ..aCVT(..#cvtDataToInterfaceOperator,"Between")="between" Set ..aCVT(..#cvtDataToInterfaceOperator,"NotBetween")="not between" Set ..aCVT(..#cvtDataToInterfaceOperator,"Equal")="equal" Set ..aCVT(..#cvtDataToInterfaceOperator,"NotEqual")="not equal" Set ..aCVT(..#cvtDataToInterfaceOperator,"GreaterThan")="greater than" Set ..aCVT(..#cvtDataToInterfaceOperator,"GreaterThanOrEqualTo")="greater than or equal to" Set ..aCVT(..#cvtDataToInterfaceOperator,"LessThan")="less than" Set ..aCVT(..#cvtDataToInterfaceOperator,"LessThanOrEqualTo")="less than or equal to" ; OPERATOR: INTERFACE -> DATA Set Key="" For Set Key=$O(..aCVT(..#cvtDataToInterfaceOperator,Key)) Quit:(Key="") Do . Set InterfaceVal=..aCVT(..#cvtDataToInterfaceOperator,Key) . Set ..aCVT(..#cvtInterfaceToDataOperator,InterfaceVal)=Key ; ALIGN: DATA -> INTERFACE Set ..aCVT(..#cvtDataToInterfaceAlign,"LEFT")=$$$taLeftJustify Set ..aCVT(..#cvtDataToInterfaceAlign,"CENTER")=$$$taCenter Set ..aCVT(..#cvtDataToInterfaceAlign,"RIGHT")=$$$taRightJustify ; ALIGN: INTERFACE -> DATA Set Key="" For Set Key=$O(..aCVT(..#cvtDataToInterfaceAlign,Key)) Quit:(Key="") Do . Set InterfaceVal=..aCVT(..#cvtDataToInterfaceAlign,Key) . Set ..aCVT(..#cvtInterfaceToDataAlign,InterfaceVal)=Key ; We plaatsen in de align menu tags de overeenkomstige alignwaarde van een TMLabel Set ..rbAlignLeft.Tag=$$$taLeftJustify Set ..rbAlignCenter.Tag=$$$taCenter Set ..rbAlignRight.Tag=$$$taRightJustify ;Conditional compos aanmaken (dynamisch) Do ..FBuildConditionCmps(3) ;ViaType aan numberformat toevoegen Do ..cbbGeneralNrFormat.Items.Insert(0,$$$cntNrFmtViaType) ;Test query ;Set ..MQuery=##class(Sys.MaskedQuery).%OpenId("TR||HyperlinkTest") ;Set ..emColumn=..MQuery.emColumns.GetAt(1) ;Set ..MQuery=##class(Sys.MaskedQuery).%OpenId("Dynamisch||Test") ;Set ..emColumn=..MQuery.emColumns.GetAt(4) ;Do ..emColumn.emExcelFmt.Clear() ;Do ..rOPEN() q $$$OK ]]> emExcelFmt,LabelCaption cache 0 document literal emExcelFmt,LabelCaption cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal Args:%String cache 0 document literal cache 0 document literal cache 0 %Library.Boolean document literal 0) Set emExcelFmtHeader.FontItalic=($LF(..lblHdrGFExample.Font.Style,$$$fsItalic)>0) Set emExcelFmtHeader.FontUnderline=($LF(..lblHdrGFExample.Font.Style,$$$fsUnderline)>0) Set emExcelFmtHeader.FontColor=$S(..lblHdrGFExample.Font.Color=$$$clNone:$$$xlColorIndexAutomatic,1:..lblHdrGFExample.Font.Color) Set emExcelFmtHeader.BackgroundColor=$S(..lblHdrGFExample.Color=$$$clNone:$$$xlColorIndexNone,1:..lblHdrGFExample.Color) Quit ;------------------------------------------------------------------------------ rsWriteGeneral(emExcelFmtGeneral) Set emExcelFmtGeneral.FontName=..lblGFExample.Font.Name Set emExcelFmtGeneral.FontSize=..lblGFExample.Font.Size Set emExcelFmtGeneral.FontBold=($LF(..lblGFExample.Font.Style,$$$fsBold)>0) Set emExcelFmtGeneral.FontItalic=($LF(..lblGFExample.Font.Style,$$$fsItalic)>0) Set emExcelFmtGeneral.FontUnderline=($LF(..lblGFExample.Font.Style,$$$fsUnderline)>0) Set emExcelFmtGeneral.FontColor=$S(..lblGFExample.Font.Color=$$$clNone:$$$xlColorIndexAutomatic,1:..lblGFExample.Font.Color) Set emExcelFmtGeneral.BackgroundColor=$S(..lblGFExample.Color=$$$clNone:$$$xlColorIndexNone,1:..lblGFExample.Color) Set emExcelFmtGeneral.NumberFormat=$TR(..cbbGeneralNrFormat.Text,".,",",.") Set emExcelFmtGeneral.Alignment=..aCVT(..#cvtInterfaceToDataAlign,..lblGFExample.Alignment) Set emExcelFmtGeneral.AutoFit=(..chkAutoFit.Checked="True") Set emExcelFmtGeneral.MultiLine=(..chkMultiLine.Checked="True") Quit ;------------------------------------------------------------------------------ rsWriteConditional(Index,emExcelFmtCond) New Label Set Label=..FGetCmpLabelExample(Index) Set emExcelFmtCond.FontBold=($LF(Label.Font.Style,$$$fsBold)>0) Set emExcelFmtCond.FontItalic=($LF(Label.Font.Style,$$$fsItalic)>0) Set emExcelFmtCond.FontUnderline=($LF(Label.Font.Style,$$$fsUnderline)>0) Set emExcelFmtCond.FontColor=$S(Label.Font.Color=$$$clNone:$$$xlColorIndexAutomatic,1:Label.Font.Color) Set emExcelFmtCond.BackgroundColor=$S(Label.Color=$$$clNone:$$$xlColorIndexNone,1:Label.Color) New CheckBox Set CheckBox=..FGetCmpCheckBoxCond(Index) Set emExcelFmtCond.Enabled=(CheckBox.Checked="True") New Cmp ;COMBO TYPE Set Cmp=..aCondCMP(Index,..#ccComboType) If Cmp.ItemIndex=-1 Do . Set emExcelFmtCond.Type="" Else Do . Set emExcelFmtCond.Type=..aCVT(..#cvtInterfaceToDataType,Cmp.Text) ;COMBO OPERATOR Set Cmp=..aCondCMP(Index,..#ccComboOperator) If Cmp.ItemIndex=-1 Do . Set emExcelFmtCond.Operator="" Else Do . Set emExcelFmtCond.Operator=..aCVT(..#cvtInterfaceToDataOperator,Cmp.Text) ;TEXT FORMULA1 Set Cmp=..aCondCMP(Index,..#ccTextFormula1) Set emExcelFmtCond.Formula1=Cmp.Text ;TEXT FORMULA2 Set Cmp=..aCondCMP(Index,..#ccTextFormula2) Set emExcelFmtCond.Formula2=Cmp.Text Quit ]]> cache 0 %Library.Boolean document literal STRING AaBbCcXxYy General Column Format General Header Format STRING No format selected 1 0 13 11 2 4 3 1 7 10 8 9 5 6 5 4 3 6 2 1 0 -1 %TMLabel %TMRadioButton %TMRadioButton %TMRadioButton Index cache 0 document literal cache 0 document literal cache 0 document literal Index,emExcelFmtCond cache 0 document literal %Library.CacheSerialState "%Library.TMFormClass" Address Form Button1 Button2 Button3 Button4 CheckBox1 GroupBox1 Label1 Label2 Label3 Shape1 Shape2 cbbOperator cbbType lblEn lblExample pnlCond1 txtFormula1 txtFormula2 btnBackgroundColor btnFont chkCondition lblInfo shExample gbCond1 ComboBox1 lblGFExample Button5 btnGFBackground btnGFClear btnGFFont cdColor fdFont shGFExample MQuery emColumn btnOk btnCancel cntColorIndexAutomatic cntColorIndexNone pmClear pmFormat pmiClearAll pmiClearBackColor pmiClearFont pmiFormatBackColor pmiFormatFont pmiSep1 SpeedButton1 btnFormat btnClear pmiAlign pmiAlignCenter pmiAlignLeft pmiAlignRight gbGeneral cbbGeneralNrFormat MenuItem1 MenuItem2 chkAutoFit chkMultiLine Label4 Label5 Label6 SpeedButton2 btnHdrClear btnHdrFormat gbHeader lblHdrGFExample shHdrGFExample pmHdrFormat pmiHdrFormatBackColor pmiHdrFormatFont RadioButton1 RadioButton2 RadioButton3 rbAlignCenter rbAlignLeft rbAlignRight btnGeneralFormat