Page 1 of 1

Delimiting text - strange problem

Posted: Tue Nov 24, 2009 4:46 am
by JMusic
I hope someone has a solution and I haven't just run into
a bug...

I have a screen full of text that has a single semi-colon
in it. I capture that screen full of text to the
clipboard, pull the clipboard contents into a variable,
and delimit the variable by semi-colon. All of that
works fine.

I can then show the variable {RESULT} and get:

"blah blah blah","stuff stuff"

Then when I show the variable {RESULT(0)} I get, as
expected:

"blah blah blah"

Then when I show the variable {RESULT(1)} I get:

""

If I go back and show {RESULT} again, I still see the
second piece, but it cannot be shown with (1) (or (2) or
(3), etc.). Any ideas on why that might be? I am
completely at a loss.

Delimiting text - strange problem

Posted: Wed Nov 25, 2009 2:17 am
by Oleg
I've created the small task for testing (see below).
It's working correctly.
What do I do wrong?

;*******************************
;* RoboTask Task file         &n bsp;*
;* Do not edit in text editor! *
;*******************************

[Root]
ActionAfterRun=INTEGER|0
Actions=FOLDER
Automat=INTEGER|-1
CatID=INTEGER|839555382
ContinueOnError=INTEGER|0
ExternalName=STRING|"Task883"
Hide=INTEGER|0
ID=INTEGER|1750400747
LocalVariables=STRING|"aaa,bbb"
LogOnAsUser=INTEGER|1
Name=STRING|"test delimiting"
Priority=INTEGER|3
RunOnClose=INTEGER|0
RunOnStartup=INTEGER|0
ToLog=INTEGER|3
WriteGeneralLog=INTEGER|0

[Actions]
Action1=FOLDER
Action2=FOLDER
Action3=FOLDER

[Actions\Action1]
ActionID=STRING|"A_VARIABLES_SET"
Enabled=INTEGER|-1
Name=STRING|"Set variable ""AAA"" with value ""First part; second part"""
Params=FOLDER

[Actions\Action1\Params]
expand=STRING|"0"
varname=STRING|"AAA"
varvalue=STRING|"First part; second part"

[Actions\Action2]
ActionID=STRING|"A_VARIABLES_DELIMITED"
Enabled=INTEGER|-1
Name=STRING|"Delimit Variable"
Params=FOLDER

[Actions\Action2\Params]
colon=STRING|"0"
comma=STRING|"0"
other=STRING|"0"
quote=STRING|"0"
semocolon=STRING|"1"
space=STRING|"0"
spaceasone=STRING|"0"
string=STRING|"{aaa}"
tab=STRING|"0"
variable=STRING|"bbb"

[Actions\Action3]
ActionID=STRING|"A_DIALOG_MESSAGE"
Enabled=INTEGER|-1
Name=STRING|"Show ""{aaa}"""
Params=FOLDER

[Actions\Action3\Params]
icon=STRING|"1"
msg0=STRING|"{aaa}"
msg1=STRING|"{bbb}"
msg2=STRING|"{bbb(0)}"
msg3=STRING|"{bbb(1)}"
msgcount=STRING|"4"
playsound=STRING|"0"
showmessage=STRING|"1"

Delimiting text - strange problem

Posted: Mon Nov 30, 2009 6:55 am
by JMusic
Two computers, same identical task (the task Oleg posted, with my text
string substituted, exported from computer 2 and imported on computer 1
without changes).






Computer 1 shows nothing for {bbb(1)} in spite of {bbb} having both parts.

I am still at a complete loss as to why this might happen, and perhaps even
more confused now since it works correctly on my other computer.

Delimiting text - strange problem

Posted: Mon Nov 30, 2009 7:49 am
by JMusic
More testing and the problem gets even more puzzling...

"First part; second part; third part; fourth part; fifth
part"

(0) = First part
(1) =
(2) =
(3) = fourth part
(4) = fifth part

It is consistent. I have lost the ability to reference
(1) and (2) on this computer. I have uninstalled and
reinstalled Robotask, rebooted, etc. Completely at a
loss.   

I have managed to do a workaround, using vb evaluate
instr("{bbb}",";") and mid("{bbb}","{instrresult}",1).
That is such a hack job though. I would like to figure
out the actual problem so that I don't have to re-write a
bunch of macros.

Delimiting text - strange problem

Posted: Mon Nov 30, 2009 7:57 am
by JMusic


Ignore my vb evals in the script. That was me testing whether I could
accomplish it another way.

;*****************************
;* RoboTask Task file       
;* Do not edit in text editor!
;*****************************

[Root]
ActionAfterRun=INTEGER|0
Actions=FOLDER
Automat=INTEGER|0
CatID=INTEGER|0
ContinueOnError=INTEGER|0
Events=FOLDER
ExternalName=STRING|"Task883"
Hide=INTEGER|0
ID=INTEGER|1750400747
Name=STRING|"test delimiting (imported) (imported)"
Priority=INTEGER|3
RunOnClose=INTEGER|0
RunOnStartup=INTEGER|0
ToLog=INTEGER|3
WriteGeneralLog=INTEGER|0

[Actions]
Action1=FOLDER
Action2=FOLDER
Action3=FOLDER
Action4=FOLDER
Action5=FOLDER

[Actions\Action1]
ActionID=STRING|"A_VARIABLES_SET"
Enabled=INTEGER|-1
Name=STRING|"Set variable ""AAA"" with value ""First part; second part;
third part; fourth part; fifth part; sixth part"""
Params=FOLDER

[Actions\Action1\Params]
expand=STRING|"0"
varname=STRING|"AAA"
varvalue=STRING|"First part; second part; third part; fourth part; fifth
part; sixth part"

[Actions\Action2]
ActionID=STRING|"BASIC_EVALUATE"
Enabled=INTEGER|0
Name=STRING|"Evaluate"
Params=FOLDER

[Actions\Action2\Params]
expression=STRING|"instr(""{AAA}"","";"")"
variable=STRING|"STRLOC"

[Actions\Action3]
ActionID=STRING|"BASIC_EVALUATE"
Enabled=INTEGER|0
Name=STRING|"Evaluate"
Params=FOLDER

[Actions\Action3\Params]
expression=STRING|"mid(""{AAA}"",34,1)"
variable=STRING|"RETURNED"

[Actions\Action4]
ActionID=STRING|"A_VARIABLES_DELIMITED"
Enabled=INTEGER|-1
Name=STRING|"Delimit Variable"
Params=FOLDER

[Actions\Action4\Params]
colon=STRING|"0"
comma=STRING|"0"
other=STRING|"0"
quote=STRING|"0"
semocolon=STRING|"1"
space=STRING|"0"
spaceasone=STRING|"0"
string=STRING|"{aaa}"
tab=STRING|"0"
variable=STRING|"bbb"

[Actions\Action5]
ActionID=STRING|"A_DIALOG_MESSAGE"
Enabled=INTEGER|-1
Name=STRING|"Show ""{aaa}"""
Params=FOLDER

[Actions\Action5\Params]
icon=STRING|"1"
msg0=STRING|"{aaa}"
msg1=STRING|"{bbb}"
msg2=STRING|"{bbb(0)}"
msg3=STRING|"{bbb(1)}"
msg4=STRING|"{bbb(2)}"
msg5=STRING|"{bbb(3)}"
msg6=STRING|"{bbb(4)}"
msg7=STRING|"{bbb(5)}"
msgcount=STRING|"8"
playsound=STRING|"0"
showmessage=STRING|"1"

[Events]
Event1=FOLDER

[Events\Event1]
Enabled=INTEGER|-1
EventID=STRING|"E_GENERAL_TRAYICON"
Params=FOLDER

[Events\Event1\Params]
filename=STRING|"{SYSTEMDIR}\SHELL32.dll"
iconindex=STRING|"14"

Delimiting text - strange problem

Posted: Tue Dec 01, 2009 4:15 am
by Oleg
See my result:



I've tested this on different operating systems. Result the same. Unfortunately I can't simulate your problem.

Delimiting text - strange problem

Posted: Tue Dec 01, 2009 1:00 pm
by JMusic
Where in the registry are those variables stored? I'm
assuming in the registry...   Maybe I can kick the tires by
deleting some entries in the registry that are "stuck".   

Delimiting text - strange problem

Posted: Wed Dec 02, 2009 3:38 am
by Oleg
I think that this will not helps you, because you assign new value to variable at first step.
Also RoboTask reads saved values only at the starting and saves variable values only when it stops.

Look at the registry key:
HKEY_CURRENT_USER\Software\Neowise\RoboTask\User variables