fernandolk_1992 Posted May 10, 2024 Topic Count: 23 Topics Per Day: 0.01 Content Count: 59 Content Per Day: 0.04 Reputation: 7 Achievement Points: 482 Solved Content: 0 Days Won: 3 Status: Offline Device: Windows Report Posted May 10, 2024 Bom dia. Pessoal, preciso identificar o movimento criado no momento que estou gerando um adiantamento de contrato no TCOP. Preciso disso para alimentar 2 campos de forma automática após a liberação acontecer. Estou usando o processo padrão nesses casos que é executar a atividade de Ler Parametros do Processo, transformar o registro em XML e depois a atividade de exceção. Porem ao consultar o XML não existe o ID do movimento criado. XML Retornado: <Parametros> <xs:schema id="Parametros" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> <xs:element name="Parametros" msdata:IsDataSet="true" msdata:UseCurrentLocale="true"> <xs:complexType> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:element name="Parametros"> <xs:complexType> <xs:sequence> <xs:element name="OBJECTID" msdata:AutoIncrement="true" type="xs:int" /> <xs:element name="CodColigada" type="xs:int" minOccurs="0" /> <xs:element name="IdPrj" type="xs:int" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="Parametros.ListaIdAdiantamento"> <xs:complexType> <xs:sequence> <xs:element name="OBJECTID" msdata:AutoIncrement="true" type="xs:int" /> <xs:element name="PARENTOBJECTID" type="xs:int" minOccurs="0" /> <xs:element name="VALOR" type="xs:int" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="Parametros.IdCnt"> <xs:complexType> <xs:sequence> <xs:element name="OBJECTID" msdata:AutoIncrement="true" type="xs:int" /> <xs:element name="PARENTOBJECTID" type="xs:int" minOccurs="0" /> <xs:element name="VALOR" msdata:DataType="System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" type="xs:anyType" minOccurs="0" /> </xs:sequence> </xs:complexType> </xs:element> </xs:choice> </xs:complexType> <xs:unique name="Constraint1" msdata:PrimaryKey="true"> <xs:selector xpath=".//Parametros" /> <xs:field xpath="OBJECTID" /> </xs:unique> <xs:unique name="Parametros.ListaIdAdiantamento_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true"> <xs:selector xpath=".//Parametros.ListaIdAdiantamento" /> <xs:field xpath="OBJECTID" /> </xs:unique> <xs:unique name="Parametros.IdCnt_Constraint1" msdata:ConstraintName="Constraint1" msdata:PrimaryKey="true"> <xs:selector xpath=".//Parametros.IdCnt" /> <xs:field xpath="OBJECTID" /> </xs:unique> <xs:keyref name="Parametros_Parametros.IdCnt" refer="Constraint1"> <xs:selector xpath=".//Parametros.IdCnt" /> <xs:field xpath="PARENTOBJECTID" /> </xs:keyref> <xs:keyref name="Parametros_Parametros.ListaIdAdiantamento" refer="Constraint1"> <xs:selector xpath=".//Parametros.ListaIdAdiantamento" /> <xs:field xpath="PARENTOBJECTID" /> </xs:keyref> </xs:element> </xs:schema> <Parametros> <OBJECTID>0</OBJECTID> <CodColigada>1</CodColigada> <IdPrj>149</IdPrj> </Parametros> <Parametros.ListaIdAdiantamento> <OBJECTID>0</OBJECTID> <PARENTOBJECTID>0</PARENTOBJECTID> <VALOR>34</VALOR> </Parametros.ListaIdAdiantamento> <Parametros.IdCnt> <OBJECTID>0</OBJECTID> <PARENTOBJECTID>0</PARENTOBJECTID> <VALOR xsi:type="xs:int" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">1058 </VALOR> </Parametros.IdCnt> </Parametros> É possível descobrir o ID do movimento criado através de uma Formula Visual.
caiiomonteiro Posted May 20, 2024 Topic Count: 12 Topics Per Day: 0.00 Content Count: 184 Content Per Day: 0.06 Reputation: 93 Achievement Points: 1,205 Solved Content: 0 Days Won: 34 Status: Offline Age: 28 Device: Windows Report Posted May 20, 2024 Bom dia @fernandolk_1992 Desconheço uma forma "simples" do processo retornar o IDMOV gerado Sempre que preciso desse tipo de retorno utilizo uma consulta SQL passando alguns parâmetros do próprio processo e busco o último IDMOV criado, filtrando alguns campos "chave" funciona perfeitamente
fernandolk_1992 Posted May 21, 2024 Topic Count: 23 Topics Per Day: 0.01 Content Count: 59 Content Per Day: 0.04 Reputation: 7 Achievement Points: 482 Solved Content: 0 Days Won: 3 Status: Offline Device: Windows Author Report Posted May 21, 2024 Em 20/05/2024 at 09:11, caiiomonteiro disse: Bom dia @fernandolk_1992 Desconheço uma forma "simples" do processo retornar o IDMOV gerado Sempre que preciso desse tipo de retorno utilizo uma consulta SQL passando alguns parâmetros do próprio processo e busco o último IDMOV criado, filtrando alguns campos "chave" funciona perfeitamente Eai Caio, tudo certo? Então, até pensei em usar uma consulta, mas ai não haveria margens para erro? E outra, o maior problema que eu vejo é que pelo contexto não está retornando nenhuma informação que posso aproveitar. Seria basicamente buscar o ultimo movimento sem parâmetro algum hehe.
caiiomonteiro Posted May 22, 2024 Topic Count: 12 Topics Per Day: 0.00 Content Count: 184 Content Per Day: 0.06 Reputation: 93 Achievement Points: 1,205 Solved Content: 0 Days Won: 34 Status: Offline Age: 28 Device: Windows Report Posted May 22, 2024 @fernandolk_1992 a margem de erro existe, porém você pode filtrar o usuário do contexto, alguns campos do processo que vão para o movimento (se realmente estiverem indo), data de criação do movimento, etc
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now