function publicarDocumento() { var radioGed = (hAPI.getCardValue("radio_ged") || "") + ""; var idPastaSelecionadaRaw = (hAPI.getCardValue("idPastaSelecionada") || "") + ""; log.info("PUBLICAR_DOCUMENTO LANCAMENTO_DOCUMENTO ########## radio_ged=" + radioGed + " idPastaSelecionada=" + idPastaSelecionadaRaw); appendDebugPublicacao("publicarDocumento: radio_ged=" + radioGed + " idPastaSelecionada=" + idPastaSelecionadaRaw); if (radioGed != "publica_ged") { log.info("PUBLICAR_DOCUMENTO LANCAMENTO_DOCUMENTO ########## Nao publicar no ECM (radio_ged diferente de publica_ged)."); appendDebugPublicacao("publicarDocumento: radio_ged diferente de publica_ged."); return; } var attachments = hAPI.listAttachments(); log.info("PUBLICAR_DOCUMENTO LANCAMENTO_DOCUMENTO ########## attachments.size=" + (attachments ? attachments.size() : 0)); appendDebugPublicacao("publicarDocumento: attachments.size=" + (attachments ? attachments.size() : 0)); for (var i = 0; i < attachments.size(); i++) { var docDto = attachments.get(i); log.info("PUBLICAR_DOCUMENTO LANCAMENTO_DOCUMENTO ########## analisando anexo documentId=" + docDto.getDocumentId() + " version=" + docDto.getVersion() + " documentType=" + docDto.getDocumentType()); appendDebugPublicacao("publicarDocumento: analisando documentId=" + docDto.getDocumentId() + " version=" + docDto.getVersion() + " type=" + docDto.getDocumentType()); try { docAPI.copyDocumentToUploadArea(docDto.getDocumentId(), docDto.getVersion()); docDto.setDocumentId(0); var idPastaSelecionada = parseInt((hAPI.getCardValue("idPastaSelecionada") || "") + "", 10); if (isNaN(idPastaSelecionada) || idPastaSelecionada <= 0) { log.warn("PUBLICAR_DOCUMENTO LANCAMENTO_DOCUMENTO ########## idPastaSelecionada invalido. Documento nao sera publicado no ECM."); appendDebugPublicacao("publicarDocumento: idPastaSelecionada invalido."); continue; } docDto.setParentDocumentId(idPastaSelecionada); var attachArray = new java.util.ArrayList(); var mainAttach = docAPI.newAttachment(); mainAttach.setFileName(docDto.getPhisicalFile()); mainAttach.setPrincipal(true); mainAttach.setAttach(false); attachArray.add(mainAttach); docDto.setActiveVersion(true); docDto.setColleagueId(getValue("WKUser")); docDto.setPublisherId(getValue("WKUser")); if (hAPI.getCardValue("radio_data_validade") == "com_data_validade") { docDto.setExpires(true); if (hAPI.getCardValue("inicio_validade") != "") { var inicioValidade = (hAPI.getCardValue("inicio_validade") || "") + ""; var dataInicioSplit = inicioValidade.split("-"); var anoInicio = dataInicioSplit[0]; var mesInicio = parseFloat(dataInicioSplit[1]) - 1; var diaInicio = dataInicioSplit[2]; var dInicio = new Date(anoInicio, mesInicio, diaInicio); docDto.setValidationStartDate(dInicio); } if (hAPI.getCardValue("expiracao_validade") != "") { var dataVencimento = (hAPI.getCardValue("expiracao_validade") || "") + ""; var dataSplit = dataVencimento.split("-"); var ano = dataSplit[0]; var mes = parseFloat(dataSplit[1]) - 1; var dia = dataSplit[2]; var d = new Date(ano, mes, dia); docDto.setExpirationDate(d); } if (hAPI.getCardValue("dias_antes_expiracao") != "") { var diasAntesExpiracao = parseInt(hAPI.getCardValue("dias_antes_expiracao"), 10); docDto.setNotificationDays(diasAntesExpiracao); } } else { docDto.setExpires(false); } log.info("PUBLICAR_DOCUMENTO LANCAMENTO_DOCUMENTO ########## before create document"); var doc = docAPI.createDocument(docDto, attachArray, null, null, null); log.info("PUBLICAR_DOCUMENTO LANCAMENTO_DOCUMENTO ########## DOCUMENTO CRIADO COM O ID: " + doc.getDocumentId()); appendDebugPublicacao("publicarDocumento: documento publicado no ECM com id=" + doc.getDocumentId()); } catch (e) { log.error("PUBLICAR_DOCUMENTO LANCAMENTO_DOCUMENTO ########## falha ao publicar anexo documentId=" + docDto.getDocumentId() + " erro=" + e); appendDebugPublicacao("publicarDocumento: ERRO ao publicar documentId=" + docDto.getDocumentId() + " erro=" + e); } } } function appendDebugPublicacao(msg) { try { var atual = (hAPI.getCardValue("debug_publicacao") || "") + ""; var prefix = atual ? atual + "\n" : ""; hAPI.setCardValue("debug_publicacao", prefix + msg); } catch (e) { log.warn("appendDebugPublicacao falhou: " + e); } }