question

kim D avatar image
0 Likes"
kim D asked Matthew Gillespie commented

File open error occurred

Modeling does not work with messages in the system console windowsongpa.fsm

FlexSim 20.0.2
error messagenot open
songpa.fsm (968.8 KiB)
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

1 Answer

Matthew Gillespie avatar image
2 Likes"
Matthew Gillespie answered Matthew Gillespie commented

We were able to get this model to open again without errors: songpa-fixed.fsm

The model had a lot of things configured incorrectly in the tree. Was this model built with a script?


songpa-fixed.fsm (481.5 KiB)
· 3
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

kim D avatar image kim D commented ·

I can't use script.

I did the work in the usual way.

During the operation, the screen suddenly stopped and did not work.

0 Likes 0 ·
David Seo avatar image David Seo commented ·

Dear @Matthew Gillespie.

Thank you for answer.

I and my customer want to know how to fix the problem model. I met the system console error message list when I opened the question model.

He said 'he leaved some minutes from his model during working and when he came back to his seat the model stopped, and then he could not do anything'.

We want to know how to fix it in detail.

0 Likes 0 ·
Matthew Gillespie avatar image Matthew Gillespie ♦♦ David Seo commented ·

We ran a script like this on the model:

treenode system = Model.find("ConveyorSystem");

getvarnode(system, "conveyors").subnodes.clear();
getvarnode(system, "conveyorPoints").subnodes.clear();

forobjecttreeunder(model()) {
	treenode obj = a;
	if(!isclasstype(obj, "Conveyor::Conveyor"))
		continue;
		
	treenode convSystem = getvarnode(obj, "system").first;
	if(convSystem && !convSystem.value)
		convSystem.destroy();
		
	treenode points = getvarnode(obj, "conveyorPoints");
	for(int i = points.subnodes.length; i > 0; i--) {
		treenode point = points.subnodes[i];
		if(isclasstype(point, "Conveyor::ConveyorTransfer"))
            		point.destroy();
	}
}

treenode broken = Model.find("BasicFR877");
if(broken)
	broken.destroy();
	
resetmodel();

forobjecttreeunder(model()) {
	treenode obj = a;
	if(!isclasstype(obj, "Conveyor::Conveyor"))
		continue;
	function_s(obj, "finalizeSpatialChanges");	
}
0 Likes 0 ·