View Full Version : Error setting temp macro in vbscript
pjaiswal
02-16-2006, 03:02 PM
Hi,
I am using this in my vbscript to set a temporary macro BatFile.
Application.Macros(vbldTemporary).Add "BatFile", vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile")
MsgBox "%BatFile%"
And then in the next step using the run program to run a bat file as follows:
%DOSCMD% %DestinationDir%\%BatFile%
But this gives me an error.
What am I doing wrong?
Thanks.
kinook
02-16-2006, 03:49 PM
What's the error message? If either macro could contain spaces, you'll want to enclose the value in double quotes:
%DOSCMD% "%DestinationDir%\%BatFile%"
pjaiswal
02-16-2006, 04:38 PM
%DOSCMD% "%DestinationDir%\%BatFile%"
Changing it to this also gives the following error:
The syntax of the command is incorrect.
Process completed with exit code 1
Step 'Run Program' failed
Also, in my VBScript
MsgBox vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile")
This pops the right value, but the one below pops up a messagebaox with : <object>
Application.Macros(vbldTemporary).Add "BatFile", vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile")
MsgBox "%BatFile%"
Also, the value destination dir is C:\Xfolder\bin
pjaiswal
02-16-2006, 04:45 PM
OK. Changing it to this:
Application.Macros(vbldTemporary).Add "BatFile", SFname
and SFname is a string with the recordset value worked....for some reason.
Thanks.
kinook
02-17-2006, 08:48 AM
Your code stores the recordset field object rather than its value. Use
Application.Macros(vbldTemporary).Add "BatFile", vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile").Value
to store the field's value in the macro.
pjaiswal
02-17-2006, 02:31 PM
Hi,
I am trying to Set Macro called BatFile and giving the following in the value field like this:
%vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile").Value%
or
vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile").Value
or
vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile")
or
%vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile")%
These are the errors I get:
C:\PLTS\Bin\vbld_TempMacroObj' is not recognized as an internal or external command,
operable program or batch file.
Error expanding macros or script in property MacroValue: <Error parsing macros: Unrecoverable Parse Error at position 28 - expecting percent_sign>
What should I use?
kinook
02-17-2006, 03:01 PM
http://www.visualbuild.com/Manual?scriptexpressions.htm
pjaiswal
02-17-2006, 06:00 PM
Thanks!
I have another question:
builder.RunProgram(%DOSCMD% "%DestinationDir%\[vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile").Value]")
Adding this line to my vbscript code gives me error:
Error in Run Script (VBScript) script code at Line 61, Column 33 (Expected ')')
Code: builder.RunProgram(C:\WINDOWS\system32\cmd.exe /C "C:\PLTS\Bin\[vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile").Value]")
But running this same command in Run program action:
%DOSCMD%
"%DestinationDir%\[vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile").Value]"
runs fine.
How can I incorporate this in the script?
pjaiswal
02-17-2006, 06:25 PM
This gives me the right value when I run the script:
MsgBox vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile").Value
But
builder.RunProgramEx(%DOSCMD% %DestinationDir%\vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile").Value)
gives me the error:
Error in Run Script (VBScript) script code at Line 62, Column 35 (Expected ')')
Code: builder.RunProgramEx(C:\WINDOWS\system32\cmd.exe /C C:\PLTS\Bin\vbld_TempMacroObj("ADO_RS").Fields("TLBIMPFile").Value)
vBulletin® v3.8.11, Copyright ©2000-2024, vBulletin Solutions Inc.