About Me
I am presently a Report programmer concentrating in Cognos, WebFocus, Crystal Reports, and SQL. This blog is compendium of items, notes, other information I find useful. Click 'new' in header to see newer items.
If you've found information or a tool here of help you could help me by making a donation to help defray web/internet/other expenses...
-Thank you/regards
TTSAnyAppTray
Opera Profiles
Use an UNC
Resume
CREATE_SYNONYM.FEX
Looking for a way to automate recreation of meta data -- this works for me:
-* File CREATE_SYNONYM.fex
-*-
-* GLOBAL VARIABLES SET PRIOR TO ENTERING FEX...
-*
-DEFAULT &SYNONYM = '.';
-DEFAULT &&APPNAME = 'MSSQL';
-DEFAULT &&DBNAME = '.';
-DEFAULT &&DBMS = 'SQLMSS';
-DEFAULT &&ADAPTOR = 'SQL10';
-RUN
-IF &SYNONYM EQ '.' GOTO HELP
-TYPE /*
-TYPE || Remove existing &SYNONYM
-TYPE */
-RUN
-DOS IF EXIST E:\IBI\64BIT\APPS\&&APPNAME.EVAL\&SYNONYM.EVAL.* DEL E:\IBI\64BIT\APPS\&&APPNAME.EVAL\&SYNONYM.EVAL.*
-RUN
-TYPE /*
-TYPE || Create new &SYNONYM
-TYPE */
-RUN
CREATE SYNONYM &&APPNAME.EVAL/&SYNONYM.EVAL FOR &&DBNAME.EVAL.dbo.&SYNONYM.EVAL DBMS &&DBMS.EVAL AT &&ADAPTOR.EVAL
END
-RUN
-TYPE /*
-TYPE || Test new &SYNONYM.EVAL
-TYPE */
-RUN
TABLE FILE &SYNONYM.EVAL
PRINT *
WHERE RECORDLIMIT EQ 10
ON TABLE HOLD AS SYNTEST
END
-RUN
-*-
-DOS IF EXIST SYNTEST.* DEL SYNTEST.*
-GOTO XIT
-HELP
-TYPE /*
-TYPE || SYNTAX
-TYPE ||
-TYPE || CREATE_SYNONYM SYNONYM=name
-TYPE ||
-TYPE || PARMS
-TYPE ||
-TYPE || SYNONYM name of the table or view for which to create an associated .mas and .acx
-TYPE ||
-TYPE || GLOBAL VARIABLES
-TYPE ||
-TYPE || APPNAME application folder typically MSSQL
-TYPE || DBNAME name of database for example: EDM
-TYPE || DBMS database engine typically SQLMSS
-TYPE || ADAPTOR defined adaptor-connection typically SQL10
-TYPE */
-RUN
-XIT
EXAMPLE USE:
EX CREATE_SYNONYM
-RUN
-*-
-* GLOBAL VARIABLES SET PRIOR TO ENTERING FEX...
-*
-DEFAULT &SYNONYM = '.';
-DEFAULT &&APPNAME = 'MSSQL';
-DEFAULT &&DBNAME = 'YOURDBNAME';
-DEFAULT &&DBMS = 'SQLMSS';
-DEFAULT &&ADAPTOR = 'YOURADAPTOR';
-RUN
-SET &&DBNAME = 'YOURDBNAME';
-TYPE /*
-TYPE || CREATE &&DBNAME.EVAL VIEWS...
-TYPE */
-RUN
EX CREATE_SYNONYM SYNONYM=WORKINGTITLEAPPLICATION_VIEW
EX CREATE_SYNONYM SYNONYM=WORKINGTITLEAPPBUDGETLINEITEM_VIEW
EX CREATE_SYNONYM SYNONYM=WORKINGTITLEAPPPARTICIPATION_VIEW
EX CREATE_SYNONYM SYNONYM=WORKINGTITLEAPPPARTICIPANT_VIEW
EX CREATE_SYNONYM SYNONYM=TITLEAWARDCARRYOVER_VIEW
-* File CREATE_SYNONYM.fex
-*-
-* GLOBAL VARIABLES SET PRIOR TO ENTERING FEX...
-*
-DEFAULT &SYNONYM = '.';
-DEFAULT &&APPNAME = 'MSSQL';
-DEFAULT &&DBNAME = '.';
-DEFAULT &&DBMS = 'SQLMSS';
-DEFAULT &&ADAPTOR = 'SQL10';
-RUN
-IF &SYNONYM EQ '.' GOTO HELP
-TYPE /*
-TYPE || Remove existing &SYNONYM
-TYPE */
-RUN
-DOS IF EXIST E:\IBI\64BIT\APPS\&&APPNAME.EVAL\&SYNONYM.EVAL.* DEL E:\IBI\64BIT\APPS\&&APPNAME.EVAL\&SYNONYM.EVAL.*
-RUN
-TYPE /*
-TYPE || Create new &SYNONYM
-TYPE */
-RUN
CREATE SYNONYM &&APPNAME.EVAL/&SYNONYM.EVAL FOR &&DBNAME.EVAL.dbo.&SYNONYM.EVAL DBMS &&DBMS.EVAL AT &&ADAPTOR.EVAL
END
-RUN
-TYPE /*
-TYPE || Test new &SYNONYM.EVAL
-TYPE */
-RUN
TABLE FILE &SYNONYM.EVAL
PRINT *
WHERE RECORDLIMIT EQ 10
ON TABLE HOLD AS SYNTEST
END
-RUN
-*-
-DOS IF EXIST SYNTEST.* DEL SYNTEST.*
-GOTO XIT
-HELP
-TYPE /*
-TYPE || SYNTAX
-TYPE ||
-TYPE || CREATE_SYNONYM SYNONYM=name
-TYPE ||
-TYPE || PARMS
-TYPE ||
-TYPE || SYNONYM name of the table or view for which to create an associated .mas and .acx
-TYPE ||
-TYPE || GLOBAL VARIABLES
-TYPE ||
-TYPE || APPNAME application folder typically MSSQL
-TYPE || DBNAME name of database for example: EDM
-TYPE || DBMS database engine typically SQLMSS
-TYPE || ADAPTOR defined adaptor-connection typically SQL10
-TYPE */
-RUN
-XIT
EXAMPLE USE:
EX CREATE_SYNONYM
-RUN
-*-
-* GLOBAL VARIABLES SET PRIOR TO ENTERING FEX...
-*
-DEFAULT &SYNONYM = '.';
-DEFAULT &&APPNAME = 'MSSQL';
-DEFAULT &&DBNAME = 'YOURDBNAME';
-DEFAULT &&DBMS = 'SQLMSS';
-DEFAULT &&ADAPTOR = 'YOURADAPTOR';
-RUN
-SET &&DBNAME = 'YOURDBNAME';
-TYPE /*
-TYPE || CREATE &&DBNAME.EVAL VIEWS...
-TYPE */
-RUN
EX CREATE_SYNONYM SYNONYM=WORKINGTITLEAPPLICATION_VIEW
EX CREATE_SYNONYM SYNONYM=WORKINGTITLEAPPBUDGETLINEITEM_VIEW
EX CREATE_SYNONYM SYNONYM=WORKINGTITLEAPPPARTICIPATION_VIEW
EX CREATE_SYNONYM SYNONYM=WORKINGTITLEAPPPARTICIPANT_VIEW
EX CREATE_SYNONYM SYNONYM=TITLEAWARDCARRYOVER_VIEW
Adobe AIR 1.5 Cookbook
Again, trying to learn AIR. Looking into this book at O'Reilly:
http://oreilly.com/catalog/9780596522513/#toc
...when you go here --try their 'examples' link on lower left...
http://oreilly.com/catalog/9780596522513/#toc
...when you go here --try their 'examples' link on lower left...
SomePDF (to Text)...
This is a phenomenal utility:
Google ~ SomePDF+download...
...I didn't quite see how to run it in batch -- so I made a couple of scripts that aid in that:
SomePDF.WSF
SomePDF.js
Note: There is a limit on the directory accepted by the pdf2txt program -- if you're directory is very deep you may have to SUBST or NETUSE to something shorter...
Google ~ SomePDF+download...
...I didn't quite see how to run it in batch -- so I made a couple of scripts that aid in that:
SomePDF.WSF
SomePDF.js
Note: There is a limit on the directory accepted by the pdf2txt program -- if you're directory is very deep you may have to SUBST or NETUSE to something shorter...
Non-qualified Authoring...
When talking about 'non-qualified authoring' in WebFocus
it's not a term of denigration! I't is referring to dropping the use
of 'master.segment.fieldname' qualification (default DevStudio
behavior). If you want to turn this *OFF* you do this:
it's not a term of denigration! I't is referring to dropping the use
of 'master.segment.fieldname' qualification (default DevStudio
behavior). If you want to turn this *OFF* you do this:
- Click menu Window/Options
- Chose 'Reporting' tab
- Click 'unqualified fieldnames'
...now default behavior of 'master.segment.field' qualification is off...
now you'll get just DN (vs. 'THEDATA.THEDATA.DN')...
now you'll get just DN (vs. 'THEDATA.THEDATA.DN')...
EXAMPLE:
Using Non-IE Browser in DevStudio
...grr.
I would like browser reconfigurability in WebFocus DevStudio.
I get around by launch page (or url in my emails) that uses servlet. However, if used in Outlook 2007 there's a quirk -- you get a 'General failure' if you've a non-IE browser configured -- had to tweak for Opera:
Related:
http://bit.ly/FIBI_Discussion_754105605
http://bit.ly/FYI_Firefox_Outlook_2007_Issue
I would like browser reconfigurability in WebFocus DevStudio.
I get around by launch page (or url in my emails) that uses servlet. However, if used in Outlook 2007 there's a quirk -- you get a 'General failure' if you've a non-IE browser configured -- had to tweak for Opera:
Related:
http://bit.ly/FIBI_Discussion_754105605
http://bit.ly/FYI_Firefox_Outlook_2007_Issue
WebFocus ~ Tip ~ Sampling data elements in synonym editor
WebFocus_Batch.vbs ~ wsf
This proves handy if you need to break apart a volume request with EDASTART. The idea is to first run a focus exec that creates a PARMSFILE that can then be processed by this script. It's parameters are generalized, i.e., P1, P2, P3, etc. It assumes you've created a T3I_template file that has these as substitution variables of the form %P1%, %P2%, %P3%, etc.
Performs iterative focus requests for Batch reporting
Assumes: t3i_template
CScript ..\_cmd\WebFocus_BATCH.wsf…
/PARMSFILE:p1parms.ftm…
/T3I=mfr_r_P1…
/P1:4…
/P2:2…
/P3:5…
/P4:3…
/P1_Default:0682
...
WebFocus_Batch by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
Performs iterative focus requests for Batch reporting
Assumes: t3i_template
CScript ..\_cmd\WebFocus_BATCH.wsf…
/PARMSFILE:p1parms.ftm…
/T3I=mfr_r_P1…
/P1:4…
/P2:2…
/P3:5…
/P4:3…
/P1_Default:0682
...
WebFocus_Batch by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
WebFocus_Request.vbs ~ .wsf
This proves handy if you're constantly doing EDASTART requests on a server. Takes some of the tedium and repetion out of creating batch requests.
WebFocus_Request by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
<package>
<job id="WebFocus_Request">
<object id="oFS"
progid="Scripting.FileSystemObject"
/>
<object id="oSh"
progid="WScript.Shell"
/>
<reference object="Scripting.FileSystemObject" />
<reference object="WScript.Shell" />
<script language="vbscript"
src="WebFocus_Request.vbs"
>
</script>
</job>
</package>
OPTION EXPLICIT
'-
' Name: WebFocus_Request.vbs
' Description: Use EDASTART to performs focus requests
' Syntax: CScript WebFocus_Request.wsf /fex:your.fex
'-
Dim bDebug, oArguments, oT3I, sCurDir, sCurDrive, sFEX, sRun
Set oArguments= WScript.Arguments.Named
sFEX=oArguments.Item("FEX")
If sFEX="" Then
WScript.Echo "Expecting one argument FEX:yourfex"
WScript.Quit
End If
'
sCurDir=oSh.CurrentDirectory
sCurDrive=Left(sCurDir,2)
'
Set oT3I=oFS.OpenTextFile(sCurDir & "\" & sFEX & ".t3i",ForWriting,vbTrue)
oT3I.Writeline "%connect"
oT3I.Writeline "%begin"
oT3I.Writeline "EX " & sFex
oT3I.Writeline "%end"
oT3I.Writeline "%disconnect"
oT3I.Writeline "%stop_server"
oT3I.Close
'
sRun= "cmd /c " & _
"(@echo off) && " & _
"(" & sCurDrive & ") && " & _
"(cd " & sCurDir & ") && " & _
"(call e:\ibi\64bit\srv76\wfs\bin\edastart -f " & sFEX & ")"
'
If bDebug Then
sRun=InputBox("sRun?",WScript.ScriptName,sRun)
End If
'
oSh.Run sRun, 4, vbTrue
WebFocus_Request by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
<package>
<job id="WebFocus_Request">
<object id="oFS"
progid="Scripting.FileSystemObject"
/>
<object id="oSh"
progid="WScript.Shell"
/>
<reference object="Scripting.FileSystemObject" />
<reference object="WScript.Shell" />
<script language="vbscript"
src="WebFocus_Request.vbs"
>
</script>
</job>
</package>
OPTION EXPLICIT
'-
' Name: WebFocus_Request.vbs
' Description: Use EDASTART to performs focus requests
' Syntax: CScript WebFocus_Request.wsf /fex:your.fex
'-
Dim bDebug, oArguments, oT3I, sCurDir, sCurDrive, sFEX, sRun
Set oArguments= WScript.Arguments.Named
sFEX=oArguments.Item("FEX")
If sFEX="" Then
WScript.Echo "Expecting one argument FEX:yourfex"
WScript.Quit
End If
'
sCurDir=oSh.CurrentDirectory
sCurDrive=Left(sCurDir,2)
'
Set oT3I=oFS.OpenTextFile(sCurDir & "\" & sFEX & ".t3i",ForWriting,vbTrue)
oT3I.Writeline "%connect"
oT3I.Writeline "%begin"
oT3I.Writeline "EX " & sFex
oT3I.Writeline "%end"
oT3I.Writeline "%disconnect"
oT3I.Writeline "%stop_server"
oT3I.Close
'
sRun= "cmd /c " & _
"(@echo off) && " & _
"(" & sCurDrive & ") && " & _
"(cd " & sCurDir & ") && " & _
"(call e:\ibi\64bit\srv76\wfs\bin\edastart -f " & sFEX & ")"
'
If bDebug Then
sRun=InputBox("sRun?",WScript.ScriptName,sRun)
End If
'
oSh.Run sRun, 4, vbTrue
Opera 10.6 is good ~ voice is back...
Just upgraded to 10.6. I like it. It does seem faster, and, I especially like that 'voice' is back...
%comspec% /v:on
Arcane, twisted, strange(hereafter referred to as "ATS")? Welcome to my world. However, some benefits:
-Logic is all "inline"
-Some constructs ~ problems become easier to resolve(at least for me--remember ATS).
In order to fully realize it's potential it's invoke DOS using delayed variable expansion. Also, if
your making this a "startup" prompt for dos--use /k switch.
EXAMPLE
%comspec% /v:on /k (C:)
-Logic is all "inline"
-Some constructs ~ problems become easier to resolve(at least for me--remember ATS).
In order to fully realize it's potential it's invoke DOS using delayed variable expansion. Also, if
your making this a "startup" prompt for dos--use /k switch.
EXAMPLE
%comspec% /v:on /k (C:)
CS_Two_Folders
Here's a utility .cmd I created for doing CompareSuite compares against two folders.
Download (extracts to 'MyItzybits'):
http://www.box.net/shared/p2gvyvorkq
CS_Two_Folders by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
Download (extracts to 'MyItzybits'):
http://www.box.net/shared/p2gvyvorkq
CS_Two_Folders by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
PDFViewer
Here's a utility I created for viewing PDF files.
Download (extracts to 'MyItzybits'):
http://www.box.net/shared/jsfagmezmd
Just the HTA:
http://www.box.net/shared/jocxhj5uef
The PageForward/Backward (AutoIt) Scripts:
http://www.box.net/shared/4eu47giktk
http://www.box.net/shared/95no527p4s
PDFViewer by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
Download (extracts to 'MyItzybits'):
http://www.box.net/shared/jsfagmezmd
Just the HTA:
http://www.box.net/shared/jocxhj5uef
The PageForward/Backward (AutoIt) Scripts:
http://www.box.net/shared/4eu47giktk
http://www.box.net/shared/95no527p4s
History:
09/22/2010 ZoomDefault config added tighted parm processing
08/26/2010 InitPDF startup parm added to allow you to begin on a particular PDF
07/27/2010 Prev ~ Next allow you to scroll in increments of n files. If 1st file 'Prev' is disabled ~ if last file Next is disabled.
PDFViewer by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
FEXViewer
Here's a utility I created for viewing WebFocus FEX files.
Download(extracts to 'MyItzyBits'):
http://www.box.net/shared/t66r8y1u8l
Download(extracts to 'MyItzyBits'):
http://www.box.net/shared/t66r8y1u8l
WebFocus: Compounded PDF ~ SQLOUT ~ "Nodata" Pagination
There is a lot going on in these examples. I wouldn’t expect it to be clear without walking through them(which I hope to do a local user group meeting). Meanwhile, if you have questions or suggestions please drop me a line.
I create smaller parts of a report piecemeal -- then combine them into "_page_1.fex", "_page_2.fex", etc. using “EX” vs. “-INCLUDE”. I chose this method - because there appears to be inconsistency in how the amper-variables resolve via "-INCLUDE". However, “EX” requires that you specify each of the variables to be used.
EXAMPLE:
-*-
-* Ethnicity, gender, disability ~
-* &DGRP - 'C'(=Child Count)
-SET &DGRP = 'C';
-RUN
EX ddp_district_demog_page_1 AAA='AAA',
DGRP=&DGRP,
DN=&DN,
DT=&DT,
FIRSTTIME='Y',
GENFILES='Y',
PCHOLD=&PCHOLD,
PDFSTATE=&PDFSTATE,
NOBREAK=&NOBREAK,
NOCLOSE='Y',
PAGENO=&PAGENO,
REPORTNAME=&REPORTNAME,
SCHYR=&SCHYR,
TOTPAGES=&TOTPAGES
-RUN
-SET &NOBREAK = 'NOBREAK';
-SET &PAGENO = &PAGENO + 1;
-SET &FIRSTTIME = 'N';
-RUN
-*-
-* Ethnicity, gender, disability ~
-* &DGRP - (serving district='S')
-SET &DGRP='S';
-RUN
EX ddp_district_demog_page_2 AAA='AAA',
DGRP=&DGRP,
DN=&DN,
DT=&DT,
FIRSTTIME='N',
GENFILES='Y',
PCHOLD=&PCHOLD,
PDFSTATE=&PDFSTATE,
NOBREAK=&NOBREAK,
NOCLOSE='Y',
PAGENO=&PAGENO,
REPORTNAME=&REPORTNAME,
SCHYR=&SCHYR,
TOTPAGES=&TOTPAGES
-RUN
Compounded PDF Screen or disk:
Key to creating multipart reports (think “subreport” from Crystal) is a varying “ON TABLE…” statement using amper variables: ‘ON TABLE &PCHOLD FORMAT PDF &PDFSTATE &NOBREAK’.
Supply these with various values to display the report to the screen or save to disk, and to open the first, middle, or last part of the report. The example uses a separate .fex calls for each part of the page and a final call to the "page-footer" as "closer" of compounded report(see below). By default this "footer" fex closes the report – but, for multi-page reports -- for all but the last pages supply an amper-variable “NOCLOSE=’Y’”.
-*-
-* …1st part of the report:
-SET &PDFSTATE='OPEN';
-SET &NOBREAK='NOBREAK';
-*-
-* …2nd part of the report:
-SET &PDFSTATE='';
-SET &NOBREAK='NOBREAK';
-*-
-* …final part of the report:
-SET &PDFSTATE='CLOSE';
-SET &NOBREAK=' ';
-*-
-* For screen
-SET &PCHOLD='PCHOLD';
-*-
-* For disk
-SET &PCHOLD='HOLD'
-*…in which case you would also _name_ the report and use FILEDEF
If going to the screen
-*-
-* "Footer" example
-IF &NOCLOSE EQ 'Y' GOTO PDFNOCLOSE;
-PDFCLOSE
-SET &PDFSTATE='CLOSE';
-SET &NOBREAK='';
-RUN
-PDFNOCLOSE
When using this method– the WebFocus code has to be “tweaked” to still function in report painter. IN my code I supply two sets of ‘ON TABLE’ comments just prior to the beginning of the report:
-* For compounded report use:
-*ON TABLE &PCHOLD FORMAT PDF &PDFSTATE &NOBREAK
-*-
-* For painter use:
-*ON TABLE PCHOLD FORMAT PDF
I swap one or the other of these 'ON TABLE' statements in dependent on whether I am preparing the report for production -- or "tweaking" it in the painter.
SQLOUT
Using the default “SQLReport” appears to be problematic. It appears to work the first time – but, not on subsequent executions. This has something to do with how configured on our servers– but, to get around the problems we supply a SQL statement to webfocus and use the prepared SQLOUT using this method.
ENGINE SQLMSS SET DEFAULT_CONNECTION MDEDATAB
SQL SQLMSS PREPARE SQLOUT FOR
SELECT…
END
TABLE FILE SQLOUT
PRINT …
Note:
WebFocus appears to not like T-SQL memory variables. That is you have to supply very simple amper-variabled SQL statements vs. “DECLARE …”.
Footing Variables and Empty Reports
If you want a ‘dd-mmm-yyyy’ type date – here’s an example. ‘REPORT_DATE’ is a define created from concatenating the &DATE variable with three different format suffixes.
If you want ‘-Nothing to report’ to appear use the &LINES (system variable) – in combination with your own &NODATA variable. By default I set to ‘-Nothing to Report’ – but, if I want it to be custum for an individual page I can pass this value into the report for that page. When &LINES=0 – on the “empty data” condition –BLANKITEM will be set to the &NODATA verbiage and you’ll see that at the top of the report.
-DEFAULT &REPORTLINES = 0;
-SET &REPORTLINES = &LINES;
…
DEFINE FILE DDP_I_PAGE_FOOTING
NOTHING_TO_REPORT /A100 = IF &REPORTLINES EQ 0 THEN '&NODATA.EVAL';
REPORT_DATE /A11 = '&DATED.EVAL' || '-' || '&DATEMt.EVAL' || '-' || '&DATEYY.EVAL';
REPORT_TIME /A8 = STRREP(8,'&TOD.EVAL',1,'.',1,':',8,REPORT_TIME);
BLANKITEM /A100 = IF NOTHING_TO_REPORT NE '' THEN NOTHING_TO_REPORT ELSE '';
DAT_YER_1 /A5 = DAT_YER;
END
-RUN
-*ON TABLE &PCHOLD FORMAT PDF &PDFSTATE &NOBREAK
-*ON TABLE PCHOLD FORMAT PDF
TABLE FILE DDP_I_PAGE_FOOTING
SUM
BLANKITEM AS ''
BY BLANKITEM NOPRINT
BY DAT_YER NOPRINT
FOOTING BOTTOM
" <+0>&REPORTNAME.EVAL/P"
" <+0>Page &PAGENO.EVAL of &TOTPAGES.EVAL"
WHERE READLIMIT EQ 1;
WHERE RECORDLIMIT EQ 1;
ON TABLE SET PAGE-NUM OFF
ON TABLE NOTOTAL
ON TABLE &PCHOLD FORMAT PDF &PDFSTATE &NOBREAK
AdobeReader ~ ReadAloud
One of the features of the Adobe Reader I find very useful is "read aloud". If you have "Streets and Maps" from Microsoft (or Vista~windows 7) -- you can change the default voice from "MS-Sam" to "MS-Anna".
FIND ~ 'Mark All'
You can take keywords in the WebFocus editor and with FIND ~ ‘Mark All’ – amp; establish bookmarks for associated text…
I do this for ‘FILE’, ‘ON TABLE HOLD’, and ‘FORMAT PDF’…
I do this for ‘FILE’, ‘ON TABLE HOLD’, and ‘FORMAT PDF’…
Portable apps...
You can put SeaMonkey and TaskCoach on a jump drive...
They're both great apps. And, now, portable as all get out. I especially like TaskCoach's ease of use and time tracking....
Google Portable Apps...
They're both great apps. And, now, portable as all get out. I especially like TaskCoach's ease of use and time tracking....
Google Portable Apps...
Crystal XI and VARCHAR(MAX), A.K.A. "memo"
Found a suprising thing. When attempting to use a VARCHAR(MAX), a.k.a. "memo" field with the SQL Server Native driver--Crystal XI won't recognize it correctly. It want brings it in as a String(255).
Had to change the ODBC driver used back to "SQL Server", i.e., pre-2005 and it will recognize.
Had to change the ODBC driver used back to "SQL Server", i.e., pre-2005 and it will recognize.
Toggle Input Checkboxs
This is a "how-to" I've wanted for working with HTA and other web apps.
Add a 'chkAll' input box to your form and
and onclick event which calls the routine shown. An 'all' click will toggle checkbox state of all INPUT checkboxes on the page or form. You can then set items individually...
Add a 'chkAll' input box to your form and
and onclick event which calls the routine shown. An 'all' click will toggle checkbox state of all INPUT checkboxes on the page or form. You can then set items individually...
Sub chkAll_Click Dim _ laaa, _ chkBox, _ oTag, _ lzzz '- Set chkBox = _ document.getElementsByTagName("input") For each oTag in chkBox If oTag.type = "checkbox" and _ oTag.id<>"chkAll" Then If oTag.checked = vbTrue Then oTag.checked = vbFalse Else oTag.checked = vbTrue End If End If Next End Sub
Mixing TortoiseSVN and SlikSVN
Find I have to apply --username and --password more frequently -- otherwise the authenticated username last used rules.
Clearing Excel Errors: Clearing all the green triangles
1. Take off freeze panes & remove splits
2. Page down so upper left column-row contains an error
3. Drag with mouse across other errored columns
4. Right-click any "!" cell and choose "Ignore Error"
2. Page down so upper left column-row contains an error
3. Drag with mouse across other errored columns
4. Right-click any "!" cell and choose "Ignore Error"
WebFocus AutoPrompt sometimes hides scroll results in IE
Problem
There is an issue in IE ~ webfocus auto prompt facility:
when report results are wider than horizontal~
vertical area of “body” view area -- the results
lower IFrame scroll bars are overlaid ~ hidden
(see example below).
Example of Fix
How To use IE to dynamically change ~ test CSS:
To dynamically access the CSS stylesheets in a page go 'Tools/Developer Tools' - then go to the 'CSS tab'.
The facility:
-Identifies which style sheets are in effect.
-Allows toggle of a particular rule on / off to see results real time.
There is an issue in IE ~ webfocus auto prompt facility:
when report results are wider than horizontal~
vertical area of “body” view area -- the results
lower IFrame scroll bars are overlaid ~ hidden
(see example below).
Resolution
Comment out “body” related css on the webserver
for file:
E:\ibi\WebFocus76\ibi_html\javaassist\ibi\html\describe\autoprompt_top.css
Comment out “body” related css on the webserver
for file:
E:\ibi\WebFocus76\ibi_html\javaassist\ibi\html\describe\autoprompt_top.css
EXAMPLE before ~ after fix
Example of Fix
How To use IE to dynamically change ~ test CSS:
To dynamically access the CSS stylesheets in a page go 'Tools/Developer Tools' - then go to the 'CSS tab'.
The facility:
-Identifies which style sheets are in effect.
-Allows toggle of a particular rule on / off to see results real time.
WebFocus ~ Quicklinks ~ Object Explorer "undock"
If you want more real estate for your DevStudio -- Quicklinks and Object Explorer (in Report Painter) can undock from DevStudio.
WebFocus ~ preformat CSV output
For data whose appearance~use should be fixed as alphanumeric (vs. default interpretation as numeric) -- you can preformat it via an Excel function. Use the T(value) or TEXT(value,format)...and a WebFocus DEFINE.
WebFocus ~ Use Message Viewer
In DevStudio -- there's a little drop-down next to the run command on the toolbar. If you click it and check 'Message Viewer ON' -- you'll get a dual pane output in your browser. Top pane is your results -- bottom pane are any dialogue manager ~ other messages.
Thinner TTS...
I hop around so many apps -- I thought I'd better come up with a better way to do TTS(at least for me).
I created an applet that I can access from my system tray -- whatever text may be highlighted in another app --if I right-click this from system tray and 'play' the text is read back via SAPI.
If you'd like to try --download and follow these instructions:
1) Download TTSAnyAppTray_SE.exe to Desktop or Documents folder:
http://►.ttsanyapp.operaunite.com/file_sharing_5/
2) Run TTSAnyAppTray_SE.exe to extract the software
(must be done as Administrator). This creates a folder
called MyItzyBits under same folder as downloaded to in step 1.
3) Double click ..\MyItzyBits\TTSAnyAppTray.exe
4) Highlight some text in most any application
5) Click the '►' icon in your system tray and 'Play' from that
context menu.
TTSAnyAppTray.exe has additional options:
ReadBrackets ~ check to read numeric footnote, e.g., [1] - default behavior is to not read these type items.
ReadParens ~ check to read numerics found inside parens, e.g., Robert Louis Stevenson(1850-1898) default behavior is to not read these type items.
Phonetics ~ click to open a window which stores ~ saves a list of phonetics "swaps", for example "WAR I=WAR ONE, etc.
Contains:
ProcessQuit.exe, TTSAnyAppTray.exe, TTSAnyApp.exe
TTSAnyAppTray by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at http://michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
Of course, a truly thinner TTS would be a Kindle. But, on our budget that may be a while. Meanwhile...
Enhancements:
The phonetics are now "saveable". Try changing "(default)" to a specific name and then pressing OK. If you then click the '...' -- you bring that file up and edit your own set of phonetics. If you want to have multiple copies -- save as a different name.
Screen shot(s):
Note: If you want to download additional~updated phonetics files -- download to same directory as to which you downloaded software and extracted (step 2)
I created an applet that I can access from my system tray -- whatever text may be highlighted in another app --if I right-click this from system tray and 'play' the text is read back via SAPI.
If you'd like to try --download and follow these instructions:
1) Download TTSAnyAppTray_SE.exe to Desktop or Documents folder:
http://►.ttsanyapp.operaunite.com/file_sharing_5/
2) Run TTSAnyAppTray_SE.exe to extract the software
(must be done as Administrator). This creates a folder
called MyItzyBits under same folder as downloaded to in step 1.
3) Double click ..\MyItzyBits\TTSAnyAppTray.exe
4) Highlight some text in most any application
5) Click the '►' icon in your system tray and 'Play' from that
context menu.
TTSAnyAppTray.exe has additional options:
ReadBrackets ~ check to read numeric footnote, e.g., [1] - default behavior is to not read these type items.
ReadParens ~ check to read numerics found inside parens, e.g., Robert Louis Stevenson(1850-1898) default behavior is to not read these type items.
Phonetics ~ click to open a window which stores ~ saves a list of phonetics "swaps", for example "WAR I=WAR ONE, etc.
Contains:
ProcessQuit.exe, TTSAnyAppTray.exe, TTSAnyApp.exe
TTSAnyAppTray by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at http://michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
Of course, a truly thinner TTS would be a Kindle. But, on our budget that may be a while. Meanwhile...
Enhancements:
The phonetics are now "saveable". Try changing "(default)" to a specific name and then pressing OK. If you then click the '...' -- you bring that file up and edit your own set of phonetics. If you want to have multiple copies -- save as a different name.
Screen shot(s):
Note: If you want to download additional~updated phonetics files -- download to same directory as to which you downloaded software and extracted (step 2)
'All monitors' option in LogMeIn...
This is useful -- but, it is hard to _remember_:
1) On 'LogMeIn panel' at top - choose Options
2) Choose 'monitors'
3) Check '3. All monitors'
4) Zoom out a little -- then pin the LogMeIn
panel at the top.
Now, both monitors are accessible by scrolling the bottom of the view window.
Hard to remember (for me) HTML Entities
Name | Decimal | Hex | Description | Example |
… | … | … | Horizontal ellipsis. | … |
↵ | ↵ | ↵ | Carriage return. | ↵ |
| | Vertical bar | | |
AIR 2 / ActionScript Notes
Links:
http://www.aptana.org/studio/download
http://help.adobe.com/en_US/FlashPlatform/beta/reference/actionscript/3/index.html
http://cookbooks.adobe.com/actionscript
http://docs.aptana.com/docs/index.php/HTML_Entities
...these are some things I want to do for some applications I have spinning around in my head (or have done, say, with HTA applications)...
http://cookbooks.adobe.com/post_Display_a_Twitter_feed-14726.html
http://cookbooks.adobe.com/post_Save_a_file_locally_with_Flash_Player_10-14426.html
http://cookbooks.adobe.com/post_How_do_I_know_when_the_browser_window_gets_or_lose-14527.html
http://cookbooks.adobe.com/post_Filtering_an_XMLListCollection_using_Regular_Expre-13926.html
http://cookbooks.adobe.com/post_Positioning_items_in_Flex_using_a_constraint_based-13928.html
http://cookbooks.adobe.com/post_How_to_embed_swf_file_containing_ActionScript_code-12871.html
http://cookbooks.adobe.com/post_Controlling_the_UI_with_cascading_states_based_on-12666.html
http://cookbooks.adobe.com/post_Run_time_loaded_icons-12667.html
http://cookbooks.adobe.com/post_Embed_external_text_or_Javascript_in_an_Actionscri-12749.html
http://cookbooks.adobe.com/post_SMS_Texting_with_Flex_and_Air-12007.html
http://cookbooks.adobe.com/post_Adding_version_control_to_Flex_applications-9503.html
http://cookbooks.adobe.com/post_How_to_share_test_data_between_TestCases_-6862.html
http://cookbooks.adobe.com/post_Named_Colors_In_Flex_Flash-2542.html
http://www.aptana.org/studio/download
http://help.adobe.com/en_US/FlashPlatform/beta/reference/actionscript/3/index.html
http://cookbooks.adobe.com/actionscript
http://docs.aptana.com/docs/index.php/HTML_Entities
...these are some things I want to do for some applications I have spinning around in my head (or have done, say, with HTA applications)...
http://cookbooks.adobe.com/post_Display_a_Twitter_feed-14726.html
http://cookbooks.adobe.com/post_Save_a_file_locally_with_Flash_Player_10-14426.html
http://cookbooks.adobe.com/post_How_do_I_know_when_the_browser_window_gets_or_lose-14527.html
http://cookbooks.adobe.com/post_Filtering_an_XMLListCollection_using_Regular_Expre-13926.html
http://cookbooks.adobe.com/post_Positioning_items_in_Flex_using_a_constraint_based-13928.html
http://cookbooks.adobe.com/post_How_to_embed_swf_file_containing_ActionScript_code-12871.html
http://cookbooks.adobe.com/post_Controlling_the_UI_with_cascading_states_based_on-12666.html
http://cookbooks.adobe.com/post_Run_time_loaded_icons-12667.html
http://cookbooks.adobe.com/post_Embed_external_text_or_Javascript_in_an_Actionscri-12749.html
http://cookbooks.adobe.com/post_SMS_Texting_with_Flex_and_Air-12007.html
http://cookbooks.adobe.com/post_Adding_version_control_to_Flex_applications-9503.html
http://cookbooks.adobe.com/post_How_to_share_test_data_between_TestCases_-6862.html
http://cookbooks.adobe.com/post_Named_Colors_In_Flex_Flash-2542.html
DriveMapAdd
I find I often map my T: drive as 'temporary'. Wanting to make UNCs frequently remapped easier to remember~access--I envisioned an applet that would store these for reuse. This was the result. It maps T: for an UNC or other reference passed on the command line(or dropped on it).
It stores ten previous references -- if called it without dropping or passing a filename -- it defaults to current T: drive with option to change it to any item from the dropdown list.
DOWNLOAD SELF-EXTRACTING FILE:
http://www.box.net/shared/fsjcpj5mgi
SCREENSHOT:
DriveMapAdd by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
It stores ten previous references -- if called it without dropping or passing a filename -- it defaults to current T: drive with option to change it to any item from the dropdown list.
DOWNLOAD SELF-EXTRACTING FILE:
http://www.box.net/shared/fsjcpj5mgi
SCREENSHOT:
DriveMapAdd by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
strikethrough.bas
I find this macro quite helpful. When going through a document item-by-item -- I highlight a piece of text then execute 'strikethrough' (it's on my customized menu).
Download Macro:
http://www.box.net/shared/0nkxv34t3e
Screenshot:
strikethrough.bas by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
Download Macro:
http://www.box.net/shared/0nkxv34t3e
Screenshot:
strikethrough.bas by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
RDP_SESSIONS
When I have more than one monitor available -- I place RDP sessions on that area of my desktop. In this case, the taskbar isn't available. I created this applet to allow easy switch between multiple RDP sessions.
Download Binary:
http://www.box.net/shared/i6j7vgudgy
Download Script:
http://www.box.net/shared/nh67brclv9
History:
2.0.0.30 05-18-2010 Places selection topmost -- all other RDP non-topmost
2.0.0.29 03-20-2010 Remembers top, left placement
RDP_SESSIONS by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
Download Binary:
http://www.box.net/shared/i6j7vgudgy
Download Script:
http://www.box.net/shared/nh67brclv9
History:
2.0.0.30 05-18-2010 Places selection topmost -- all other RDP non-topmost
2.0.0.29 03-20-2010 Remembers top, left placement
RDP_SESSIONS by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
Opera Behaviors
Interesting Opera behavior. When you grab a tab and pull it
outside Opera -- it 'unlinks' from the browser into a new
window.
outside Opera -- it 'unlinks' from the browser into a new
window.
Webfocus & Excel
The default format extentions for:
Tradeoffs:
xls opens natively in Excel; however, output will not preserve totals in your report.
htm preserves totals - but *is* recognized by Excel on open.
Decided to use option #1 put the files out as htm.
#1 EXL2K ~ htm #2 EXCEL ~ xls
Tradeoffs:
xls opens natively in Excel; however, output will not preserve totals in your report.
htm preserves totals - but *is* recognized by Excel on open.
Decided to use option #1 put the files out as htm.
Excel Notes
Pasted Links and Data Connections
Frustrated to find my pasted links in Excel sheets error on refresh. Came to learn that when you setup the refresh properties you can 'reuse',i.e., overlay the rows and cells. This is probably what you want if you need a static link to paste across to another sheet.
Frustrated to find my pasted links in Excel sheets error on refresh. Came to learn that when you setup the refresh properties you can 'reuse',i.e., overlay the rows and cells. This is probably what you want if you need a static link to paste across to another sheet.
ListText
Script to list text file based on start end line numbers.
Download:
http://www.box.net/shared/6f609olegt
SCREENSHOTS
Download:
http://www.box.net/shared/6f609olegt
SCREENSHOTS
TextToMP3
If you download Audacity and lame -- you can then run this script.
It takes a text file and uses SAPI to first convert to WAV format -- then lame to convert the WAV to MP3 format.
SAPI, I think, is available on most Windows based PCs. On Windows XP it comes with 'microsoft sam' -- with later versions of Windows 'microsoft anna' is the default voice (much better).
Download AutoIt script and compiled binary:
http://www.box.net/shared/u0b5qt0vul
This version uses 'b -320' lame encoding for better quality MP3.
The file downloads to TextToMP3SE.exe. This is a self-extracting file. When run it creates a folder called 'MyItzyBits' and extracts TextToMP3.au3 and TextToMP3.exe into this folder. The .au3 file is the script shown in the image here -- the executable is the compiled binary. To use -- drag-drop text files atop the executable TextToMP3.exe.
It takes a text file and uses SAPI to first convert to WAV format -- then lame to convert the WAV to MP3 format.
SAPI, I think, is available on most Windows based PCs. On Windows XP it comes with 'microsoft sam' -- with later versions of Windows 'microsoft anna' is the default voice (much better).
Download AutoIt script and compiled binary:
http://www.box.net/shared/u0b5qt0vul
This version uses 'b -320' lame encoding for better quality MP3.
The file downloads to TextToMP3SE.exe. This is a self-extracting file. When run it creates a folder called 'MyItzyBits' and extracts TextToMP3.au3 and TextToMP3.exe into this folder. The .au3 file is the script shown in the image here -- the executable is the compiled binary. To use -- drag-drop text files atop the executable TextToMP3.exe.
UniqueKWC.hta
CompareSuite is a _great_ tool. However, output can be voluminous. I made this applet to allow exam of _just differences_.
The way to use it is do the a keyword compare against two folders, & choose advanced report. Once compare completes -- use the browse button to load the HTM output in the top frame. The differences will automatically show up in the bottom frame.
Download:
http://www.box.net/shared/s70keadqmd
The way to use it is do the a keyword compare against two folders, & choose advanced report. Once compare completes -- use the browse button to load the HTM output in the top frame. The differences will automatically show up in the bottom frame.
Download:
http://www.box.net/shared/s70keadqmd
Backup/BackupEncrypt using AutoIt & 7Zip
Sometimes, there are 'miscellaneous' files I'd like backed up that normally don't go into source control. To do that I drag/drop files on the Backup.exe/BackupEncrypt.exe (compiled AutoIt scripts) -- they use & 7Zip to create .zip files in a '_zArchive' folder where those files are found.
There is a 'one-for-one' relationship of drag-dropped files and resultant '.zips'.
Scripts are dependent on this script(place at C:\!WF\_INC\filename.au3):
UtilityFunc.au3.exe
Place in a folder above the one used as target for other scripts("..\inc\UtilityFunc.au3")
If you'd like to see the .au3 files(place at C:\!WF\myWidgets\filename.au3):
Backup.au3.exe
BackupEncrypt.au3.exe
Note: All link~downloads are self-extracting files. I've tested with WinZip 12.1 and 7Zip 4.65
EXAMPLE USE
Backup ~ BackupEncrypt by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
There is a 'one-for-one' relationship of drag-dropped files and resultant '.zips'.
Scripts are dependent on this script(place at C:\!WF\_INC\filename.au3):
UtilityFunc.au3.exe
Place in a folder above the one used as target for other scripts("..\inc\UtilityFunc.au3")
If you'd like to see the .au3 files(place at C:\!WF\myWidgets\filename.au3):
Backup.au3.exe
BackupEncrypt.au3.exe
Note: All link~downloads are self-extracting files. I've tested with WinZip 12.1 and 7Zip 4.65
EXAMPLE USE
Backup ~ BackupEncrypt by Michael T. Bee is licensed under a Creative Commons Attribution 3.0 Unported License.
Based on a work at michaeltbeeitprof.blogspot.com.
Permissions beyond the scope of this license may be available at mailto:michael.t.bee.itprof@gmail.com.
VTB my floating toolbar...
I made this as an experiment in AutoIt. I find it quite helpful. The bar floats on upper left area of
desktop and can be used for general windows clipboard functions and for text case changes.
AutoIt Script ~ http://www.box.net/shared/2nvhkraf4y
Executable ~ http://www.box.net/shared/ntm89lldmg
desktop and can be used for general windows clipboard functions and for text case changes.
AutoIt Script ~ http://www.box.net/shared/2nvhkraf4y
Executable ~ http://www.box.net/shared/ntm89lldmg
WSTM ~ WinSetTopMost example using AutoIt
...or you can just use DexPot!
Download:
Self-extracting file...
http://www.box.net/shared/djdv19zm00
Zip...
http://www.box.net/shared/lg2jlcydsr
I often want a window topmost -- this is example of a 'how-to' using AutoIt:
SCREENSHOT:
SCRIPT SOURCE:
Download:
Self-extracting file...
http://www.box.net/shared/djdv19zm00
Zip...
http://www.box.net/shared/lg2jlcydsr
I often want a window topmost -- this is example of a 'how-to' using AutoIt:
SCREENSHOT:
SCRIPT SOURCE:
#region ;**** Directives created by AutoIt3Wrapper_GUI ****#AutoIt3Wrapper_icon=_ICO\preferences-system.ico#AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6#endregion ;**** Directives created by AutoIt3Wrapper_GUI ****#include#include #include Opt('MustDeclareVars', 1);-Func IsVisible($handle) If BitAND(WinGetState($handle), 2) Then Return 1 Else Return 0 EndIfEndFunc;-Func _Main() Local _ $btnBottom, _ $btnHelp, _ $btnLoc, _ $btnTop, _ $hCombo, _ $i, _ $msg, _ $sTitle, _ $var ;- $var = WinList() GUICreate('myWinSetTopMost', 450, 25) $hCombo = _ GUICtrlCreateCombo('', 2, 2, 366, 296) $btnLoc = @ScriptDir & '\_ICO\go-top.ico' $btnTop = _ GUICtrlCreateIcon($btnLoc, -1, 375, 4, 16, 16) $btnLoc = _ @ScriptDir & '\_ICO\go-bottom.ico' $btnBottom = _ GUICtrlCreateIcon($btnLoc, -1, 400, 4, 16, 16) $btnLoc = @ScriptDir & '\_ICO\help-browser.ico' $btnHelp = _ GUICtrlCreateIcon($btnLoc, -1, 425, 4, 16, 16) GUISetState() WinSetOnTop('myWinSetTopMost', '', 1) For $i = 1 To $var[0][0] If IsVisible($var[$i][1]) And _ not ($var[$i][0] = '') And _ not ($var[$i][0] = 'Start') And _ not ($var[$i][0] = _ 'Program Manager') _ Then _GUICtrlComboBox_AddString($hCombo, $var[$i][0]) EndIf Next Send('{down}') Do $msg = GUIGetMsg() $sTitle = _ _GUICtrlComboBox_GetEditText($hCombo) $sTitle = _ StringLeft($sTitle, StringLen($sTitle) - 1) Select Case $msg = $GUI_EVENT_CLOSE ExitLoop Case $msg = $btnTop If not ($sTitle = '') Then TrayTip(@ScriptName, $sTitle & ' on top...', 3, 1) WinActivate($sTitle, '') Sleep(550) ;$sTitle=InputBox(@scriptname,'$sTitle',$sTitle) WinSetOnTop($sTitle, '', 1) EndIf Case $msg = $btnBottom If not ($sTitle = '') Then TrayTip(@ScriptName, $sTitle & ' NOT on top...', 3, 1) WinActivate($sTitle, '') Sleep(550) WinSetOnTop($sTitle, '', 0) EndIf Case $msg = $btnHelp ShellExecute( _ 'http://michaeltbeeitprof.blogspot.com/' & _ 'search?q=myWinSetTopMost') EndSelect Until GUIGetMsg() = $GUI_EVENT_CLOSE GUIDelete()EndFunc;-$Debug_CB = False_Main();-Exit
Subscribe to:
Posts (Atom)