Index: trunk/ippTools/src/dettool_processedexp.c
===================================================================
--- trunk/ippTools/src/dettool_processedexp.c	(revision 23688)
+++ trunk/ippTools/src/dettool_processedexp.c	(revision 26815)
@@ -266,10 +266,36 @@
 
     PXOPT_LOOKUP_S64(det_id, config->args, "-det_id", true, false);
-    PXOPT_LOOKUP_S64(exp_id, config->args, "-exp_id", true, false);
     PXOPT_LOOKUP_STR(data_state, config->args, "-data_state", true, false);
-    if (!setProcessedExpDataState(config, det_id, exp_id, data_state)) {
-        return false;
-    }
-    return true;
+
+    psMetadata *where = psMetadataAlloc();
+
+    PXOPT_COPY_S64(config->args,where,"-det_id","det_id","==");
+    PXOPT_COPY_S64(config->args,where,"-exp_id","exp_id","==");
+
+    if (!setProcessedExpDataState(config, where, data_state)) {
+        return false;
+    }
+    psFree(where);
+    return true;
+}
+
+bool updatestateprocessedMode(pxConfig *config) {
+  PS_ASSERT_PTR_NON_NULL(config, NULL);
+  PXOPT_LOOKUP_S64(det_id,config->args, "-det_id",true,false);
+  PXOPT_LOOKUP_STR(data_state,config->args, "-data_state", true, false);
+
+  psMetadata *where = psMetadataAlloc();
+
+  PXOPT_COPY_S64(config->args,where,"-det_id","det_id","==");
+  PXOPT_COPY_S64(config->args,where,"-exp_id","exp_id","==");
+
+  if (!setProcessedExpDataState(config,where,data_state)) {
+    return(false);
+  }
+  if (!setProcessedImfileDataState(config,where,data_state)) {
+    return(false);
+  }
+  psFree(where);
+  return(true);
 }
 
