Index: trunk/ippTools/src/magicdstool.c
===================================================================
--- trunk/ippTools/src/magicdstool.c	(revision 30854)
+++ trunk/ippTools/src/magicdstool.c	(revision 32479)
@@ -350,9 +350,9 @@
     PXOPT_LOOKUP_STR(stage, config->args, "-stage", true, false);
     PXOPT_LOOKUP_STR(workdir, config->args, "-workdir", true, false);
+    PXOPT_LOOKUP_STR(set_label, config->args, "-set_label", true, false);
 
     // Optional
     PXOPT_LOOKUP_STR(recoveryroot, config->args, "-recoveryroot", false, false);
     PXOPT_LOOKUP_BOOL(noreplace, config->args, "-noreplace", false);
-    PXOPT_LOOKUP_STR(set_label, config->args, "-set_label", false, false);
     PXOPT_LOOKUP_STR(set_data_group, config->args, "-set_data_group", false, false);
     PXOPT_LOOKUP_STR(note, config->args, "-set_note", false, false);
@@ -374,5 +374,9 @@
     pxAddLabelSearchArgs (config, where, "-magic_label", "magicRun.label", "=="); // define magic label
     psString labelName = NULL;                                                    // Name of label
-    psStringAppend(&labelName, "%sRun.label", stage);
+    if (strcmp(stage, "camera")) {
+        psStringAppend(&labelName, "%sRun.label", stage);
+    } else {
+        psStringAppend(&labelName, "camRun.label");
+    }
     pxAddLabelSearchArgs (config, where, "-stage_label", labelName, "=="); // define stageRun label
     psFree(labelName);
@@ -392,4 +396,6 @@
         break;
       case IPP_STAGE_CAMERA:
+        query = pxDataGet("magicdstool_definecopy_camera.sql");
+        break;
       case IPP_STAGE_DIFF:
       case IPP_STAGE_FAKE:
