About Me


Michael T. Bee [ITProf]

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

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...

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...

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:
  • 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')...

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

WebFocus ~ Tip ~ Sampling data elements in synonym editor

  • In DevStudio ~ open new explorer window.
  • Right click ~ open master to explore in the synonym editor.
  • Right click ~ ‘sample data’.

Example:

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

...

Creative Commons License
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.

Creative Commons License
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:)

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



Creative Commons License
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

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.



Creative Commons License
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

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’…


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...

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.

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...

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"

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).


Resolution

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

Creative Commons License
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


NameDecimalHexDescriptionExample
&hellip;&#8230;&#x2026;Horizontal ellipsis.
&crarr; &#8629; &#x21B5; Carriage return.
&#124;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

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:


Creative Commons License
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:


Creative Commons License
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


Creative Commons License
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.

Opera 10.10 -12 improvements...

I've looked at Opera and it is a knockout.
Very clean interface, HTML 5 support, fast, etc.

Webfocus & Excel

The default format extentions for:
#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.

ListText

Script to list text file based on start end line numbers.

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.

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

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


Creative Commons License
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

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:
#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

SAPI 5 ~ Text to WAV sample (WSF/VBS)

You can download both the WSH/VBS version and the
AutoIt from here: http://www.box.net/shared/...zip
The WSH/VBS is almost identical to AutoIt.  
I wrap the VBS first with a .WSF file:

<package>
<job id="TextToWAV">
<reference object="WScript.Shell">
<reference object="Scripting.FileSystemObject">
<object id="oSh" progid="WScript.Shell">
</object>
<object id="oFS" progid="Scripting.FileSystemObject">
</object>
<script language="VBScript">
  oSh.PopUp "TextToWAV file1[, file2] [,file3] [,...]", _
    cint(5), _
    WScript.ScriptName, _
    vbSystemModal
</script>
<script language="VBScript" src="TextToWAV.VBS">     
</script>
</reference>
</reference>
</job>
</package>

Dim     i  
Sub ConvertTextToWAV(asFN)     
  Dim     text, oSPV, oSPSTRM, WAV, oFN     
  Set oSPV = CreateObject("SAPI.SpVoice")     
  Set oSPSTRM = CreateObject("SAPI.SpFileStream")     
  oSh.Popup "asFN[" & asFN & "]",5,WScript.ScriptName ' debug     
  Set oFN=oFS.OpenTextFile(asFN,ForReading)     
  text = oFN.ReadAll     
  WAV = Replace(asFN, ".txt", ".wav")     
  If oFS.FileExists(WAV) Then oFS.DeleteFile WAV     
  oSPSTRM.Open WAV, 3, vbFalse     
  Set oSPV.AudioOutputStream = oSPSTRM     
  oSPV.Speak text     
  oSPSTRM.Close End 
Sub  
For i = 0 To WScript.Arguments.Count - 1      
  ConvertTextToWAV(Wscript.Arguments.Unnamed(i)) 
Next

Favorite Tweets