@RootID integer
AS SELECT DISTINCT SPNS_TargetOfOperation.RootID, 
			SPNS_TargetOfOperation.OperationNo, 
			SPNS_TargetOfOperation.ClassNo, 
			SPNS_TargetOfOperation.CompositeNo,
			SPNS_OperationDefinition.OperationName, 
			SPNS_ClassDefinition.ClassName,
			SPNS_ClassInComposite.TableName, 
			SPNS_ClassInComposite.ParentClassNo,
			ParentClassDefinition.ClassName [ParentClassName]
FROM SPNS_FieldInOperation INNER JOIN SPNS_TargetOfOperation ON SPNS_FieldInOperation.OperationNo = SPNS_TargetOfOperation.OperationNo 
			AND  SPNS_FieldInOperation.RootID = SPNS_TargetOfOperation.RootID 
	INNER JOIN  SPNS_FieldDefinition ON SPNS_FieldInOperation.RootID = SPNS_FieldDefinition.RootID 
			AND  SPNS_FieldInOperation.FieldNo = SPNS_FieldDefinition.FieldNo 
	INNER JOIN SPNS_OperationDefinition ON SPNS_OperationDefinition.RootID = SPNS_FieldInOperation.RootID 
			AND  SPNS_OperationDefinition.OperationNo = SPNS_FieldInOperation.OperationNo
	INNER JOIN SPNS_ClassDefinition ON SPNS_ClassDefinition.ClassNo = SPNS_TargetOfOperation.ClassNo
			AND SPNS_ClassDefinition.RootID = SPNS_TargetOfOperation.RootID 
	INNER JOIN SPNS_ClassInComposite ON SPNS_ClassInComposite.RootID = SPNS_TargetOfOperation.RootID
		AND SPNS_TargetOfOperation.CompositeNo = SPNS_ClassInComposite.CompositeNo
		AND SPNS_TargetOfOperation.ClassNo = SPNS_ClassInComposite.ClassNo
	LEFT JOIN SPNS_ClassDefinition AS ParentClassDefinition ON ParentClassDefinition.ClassNo = SPNS_ClassInComposite.ParentClassNo
								AND ParentClassDefinition.RootID = SPNS_ClassInComposite.RootID
WHERE (SPNS_TargetOfOperation.RootID = @RootID)
		AND SPNS_OperationDefinition.OperationNo IN (select * from  #numeric_param_temp)