*/
protected void createNewProcessMain(String template, String opac, String field, String value, String id, String docType,
Set<String> collections, Map<String, String> userFields) throws Exception {
try {
ProzesskopieForm newProcess = newProcessFromTemplate(template);
newProcess.setDigitalCollections(validCollectionsForProcess(collections, newProcess));
if (opac != null)
getBibliorgaphicData(newProcess, opac, field, value);
if (docType != null && docTypeIsPossible(newProcess, docType))
newProcess.setDocType(docType);
if (userFields != null)
setUserFields(newProcess, userFields);
newProcess.CalcProzesstitel();
String state = newProcess.NeuenProzessAnlegen();
if (!state.equals("ProzessverwaltungKopie3"))
throw new RuntimeException();
logger.info("Created new process: " + id);
} catch (Exception exited) {
logger.error("Failed to create new process: " + id, exited);