{"id":16185,"date":"2020-12-11T11:54:53","date_gmt":"2020-12-11T10:54:53","guid":{"rendered":"https:\/\/developers.primaverabss.com\/en\/questions\/deteccao-de-artigo-novo-no-evento-antesdegravar\/"},"modified":"2020-12-11T17:04:20","modified_gmt":"2020-12-11T16:04:20","slug":"deteccao-de-artigo-novo-no-evento-antesdegravar","status":"publish","type":"cma_thread","link":"https:\/\/developers.ila.cegid.com\/en\/forum\/deteccao-de-artigo-novo-no-evento-antesdegravar\/","title":{"rendered":"Detec\u00e7\u00e3o de artigo novo no evento AntesDeGravar"},"content":{"rendered":"<p>Bom dia,<\/p>\n<p>Dentro do meu projecto de extensibilidade, ao gravar um artigo, preciso de realizar uma opera\u00e7\u00e3o sobre CDUs espec\u00edficos para evitar que sejam copiados quando o artigo est\u00e1 a ser copiado.<\/p>\n<p>At\u00e9 aqui o meu c\u00f3digo tem sido semelhante ao que mostro, detectando que estou em presen\u00e7a de um artigo novo se o c\u00f3digo de artigo for vazio (clsArtigo.Artigo == &#8220;&#8221;):<\/p>\n<pre class=\"EnlighterJSRAW\">public class ApiBasBSArtigos : BasBSArtigos\r\n{\r\n\tpublic override void AntesDeGravar(BasBEArtigo clsArtigo, ref string strAvisos, ExtensibilityEventArgs e)\r\n\t{\r\n\t\tbase.AntesDeGravar(clsArtigo, ref strAvisos, e);\r\n\t\t\r\n\t\tif (clsArtigo.Artigo == \"\") \/\/novo\r\n\t\t{\r\n\t\t\tif (clsArtigo.CamposUtil[\"CDU_EXEMPLO\"].Valor.ToString() != \"\")\r\n\t\t\t{\r\n\t\t\t\t\/\/estamos na presen\u00e7a de cdu copiado\r\n\t\t\t\tclsArtigo.CamposUtil[\"CDU_EXEMPLO\"].Valor = \"\";\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}<\/pre>\n<p>No entanto, detectei que o cliente faz o seguinte para copiar um artigo:<\/p>\n<ul>\n<li>abre um artigo j\u00e1 existente (com propriedades semelhantes \u00e0s pretendidas);<\/li>\n<li>edita o c\u00f3digo existente para um c\u00f3digo novo;<\/li>\n<li>edita as restantes propriedades que quer alterar;<\/li>\n<li>grava o artigo (originando um artigo novo)<\/li>\n<\/ul>\n<p>Neste caso, no evento &#8220;AntesDeGravar&#8221; a propriedade do c\u00f3digo de artigo (&#8220;Artigo&#8221;) n\u00e3o \u00e9 vazia e o meu c\u00f3digo n\u00e3o detecta que se trata de um artigo novo copiado.<\/p>\n<p><strong>Algu\u00e9m me pode indicar qual a forma mais inequ\u00edvoca e simples de detectar neste evento que o artigo \u00e9 novo?<\/strong><\/p>\n<p>Obrigado.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bom dia, Dentro do meu projecto de extensibilidade, ao gravar um artigo, preciso de realizar uma opera\u00e7\u00e3o sobre CDUs espec\u00edficos para evitar que sejam copiados quando o artigo est\u00e1 a ser copiado. At\u00e9 aqui o meu c\u00f3digo tem sido semelhante ao que mostro, detectando que estou em presen\u00e7a de um artigo novo se o c\u00f3digo [&hellip;]<\/p>\n","protected":false},"author":264,"featured_media":0,"template":"","tags":[],"cma_category":[],"cma_difficulty_level":[],"forum-tag":[370,374],"class_list":["post-16185","cma_thread","type-cma_thread","status-publish","hentry","forum-tag-integration","forum-tag-v10-en","forum-languages-pt"],"_links":{"self":[{"href":"https:\/\/developers.ila.cegid.com\/en\/wp-json\/wp\/v2\/cma_thread\/16185","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/developers.ila.cegid.com\/en\/wp-json\/wp\/v2\/cma_thread"}],"about":[{"href":"https:\/\/developers.ila.cegid.com\/en\/wp-json\/wp\/v2\/types\/cma_thread"}],"author":[{"embeddable":true,"href":"https:\/\/developers.ila.cegid.com\/en\/wp-json\/wp\/v2\/users\/264"}],"wp:attachment":[{"href":"https:\/\/developers.ila.cegid.com\/en\/wp-json\/wp\/v2\/media?parent=16185"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/developers.ila.cegid.com\/en\/wp-json\/wp\/v2\/tags?post=16185"},{"taxonomy":"cma_category","embeddable":true,"href":"https:\/\/developers.ila.cegid.com\/en\/wp-json\/wp\/v2\/cma_category?post=16185"},{"taxonomy":"cma_difficulty_level","embeddable":true,"href":"https:\/\/developers.ila.cegid.com\/en\/wp-json\/wp\/v2\/cma_difficulty_level?post=16185"},{"taxonomy":"forum-tag","embeddable":true,"href":"https:\/\/developers.ila.cegid.com\/en\/wp-json\/wp\/v2\/forum-tag?post=16185"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}