Community Tip - Did you get an answer that solved your problem? Please mark it as an Accepted Solution so others with the same problem can find the answer easily. X
Okay I am having a little issue with a small script I am trying to create.
Here it is in a nutshell. I need to flatten the current document, send it to a service and then open the original file again. The first two are no problem. I am having a heck of a time opening the original book back up from PDMLink.
Here is my code thus far:
package processInteract
function createInteract(){
local res1;
local doc;
local newname;
local doc1
doc = current_doc();
doc1 = doc_name(current_doc());
res1 = response("Have you saved? Running this command you will loose any non-saved changes!", "&Yes", "&No", "&Cancel");
if(res1 == "1" ){
doc_flatten;
newname = "c:\\temp\\" . time();
#message_box(newname,0x20);
save_as $newname;
file_close(win,0x0001);
arg1 = newname. ".xml"
system('java -cp \\lynms313q\codebase\InteractiveManualCreator.jar;\\lynms313q\codebase\wvs.jar;\\lynms313q\codebase com.toro.plm.pdmlink.arbortextadapter.ArbortextAdapter ' .arg1)
view(doc1);
}
}
function view(pdmFileName){
local wcPrefix = "x-wc://file=";
local pdmLogicalId = wcPrefix . pdmFileName;
response(pdmLogicalId);
document = doc_open(pdmLogicalId);
curr_win = current_window();
doc_show(document, curr_win);
}
This is an alternate way that I was trying as well. It will open the object below the parent object....
package processInteract
function createInteract(){
local res1;
local doc;
local newname;
local doc1
doc = current_doc();
doc1 = doc_name(current_doc());
local dobj = doc_first_dobj(current_doc());
dobj_close(dobj);
response("Logical Id = " . dobj_get_attr(dobj, "IO_ATTR_LOGICAL_ID"));
response("Dynamic Dcoument Name = " . dobj_get_attr(dobj, "WC_NAME_ATTR"));
res1 = response("Have you saved? Running this command you will loose any non-saved changes!", "&Yes", "&No", "&Cancel");
if(res1 == "1" ){
doc_flatten;
newname = "c:\\temp\\" . time();
#message_box(newname,0x20);
save_as $newname;
file_close(win,0x0001);
arg1 = newname. ".xml"
system('java -cp \\lynms313q\codebase\InteractiveManualCreator.jar;\\lynms313q\codebase\wvs.jar;\\lynms313q\codebase com.toro.plm.pdmlink.arbortextadapter.ArbortextAdapter ' .arg1)
document = doc_open(dobj_get_attr(dobj, "IO_ATTR_LOGICAL_ID"));
curr_win = current_window();
doc_show(document, curr_win);
}
}
As always any help would be greatly appreciated...
Brian
Solved! Go to Solution.
Just in case anyone wants this but here is the working code
function createInteract(){
local res1;
local doc;
local newname;
local doc1
doc = current_doc();
doc1 = doc_name(current_doc());
local logid = doc_path(current_doc());
res1 = response("Have you saved? Running this command you will loose any non-saved changes!", "&Yes", "&No", "&Cancel");
if(res1 == "1" ){
doc_flatten;
newname = "c:\\temp\\" . time();
#message_box(newname,0x20);
save_as $newname;
file_close(win,0x0001);
arg1 = newname. ".xml"
edit "$logid"
}
}
Just in case anyone wants this but here is the working code
function createInteract(){
local res1;
local doc;
local newname;
local doc1
doc = current_doc();
doc1 = doc_name(current_doc());
local logid = doc_path(current_doc());
res1 = response("Have you saved? Running this command you will loose any non-saved changes!", "&Yes", "&No", "&Cancel");
if(res1 == "1" ){
doc_flatten;
newname = "c:\\temp\\" . time();
#message_box(newname,0x20);
save_as $newname;
file_close(win,0x0001);
arg1 = newname. ".xml"
edit "$logid"
}
}