Como podemos ajudar?

Bem vindo a nossa página de manuais. Utilize a caixa de pesquisa abaixo para procurar o conteúdo desejado.

Últimos artigos

Aviso via transaction para documentos y registros

Si necesita alertar al usuario sobre determinada situación y pedir la ciencia/concordancia de el, esa es la fincionalidad cierta.

El CRM One posee una tratativa para transactions de el SAP Business One, donde ella puede al envés de simplemente bloquear la acción, presentar un mensaje y questionar el usuario si quiere seguir o no.

Ejemplo de uso:

La empresa necesita que sea enviado un mensaje de confirmación siempre que el usuario transformar un LEAD en un CLIENTE.

Entonces, crearemos una transaction patron en el B1, considerando:

  1. Verificar el tipo de el Soc. Negocio en el log de las tablas de el B1, considerando:
  2. Verificar el tipo de Soc. Negocio que esta siendo guardado.

Al validar, iremos retomar el mensage de “error” de la transaction en el siguiente formato:

[AlertaCRMOne] Desea alterar el registro de LEAD para CLIENTE?

Al recibir el mensaje de transaction, el CRM One ira a interpretar la string [AlertaCRMOne] y la transformara el bloqueo en una “mensaje de confirmación”.

Vea como el retorno de transation aparecera:

Si el usuario clique en el botón NO, el mensaje sera cerrada y nada sera hecho, incluso y actualización del registro.

si el usuario clique en el botón SI, el CRM One ira reprocesar la actualización y seguir adelante.

Es importante entender que cuando el usuario clique en el botón SI, el CRM One actualiza un campo de usuario de control llamado U_DWU_IgnoraAlerta en la planilla correspondiente de la validación con el valor “S” de SI. Por eso, su transaction debe validar ese campo tambien para permitir que la utilización ocurra con sunceso cuando el usuario clique en el botón SI, o sea, cuando el CRM One reprocesar la utilización, una transaction no va a exhibir el mensaje de nuevo.

Ahora vea la transaction SQL para la tratativa:

-- ################################################
-- INÍCIO - Alerta Lead para Cliente - CRM ONE
-- ################################################

-- VALIDA NOVO CADASTRO DO TIPO CLIENTE
IF @object_type in ('2') and @transaction_type in ('A')
BEGIN
	IF 
		(SELECT CardType FROM OCRD WHERE CardCode = @list_of_cols_val_tab_del) = 'C'
		AND 
		(SELECT ISNULL(U_DWU_IgnoraAlerta,'N') FROM OCRD WHERE CardCode = @list_of_cols_val_tab_del) = 'N'
		AND 
		(SELECT ISNULL(U_DWU_Origem,'') FROM OCRD WHERE CardCode = @list_of_cols_val_tab_del) = 'W'
	BEGIN
		Select @error = -1, @error_message = '[AlertaCRMOne] Deseja inserir o cadastro diretamente como CLIENTE?'
		select @error, @error_message
	END
END

-- VALIDA SE O CADASTRO ESTÁ SENDO ALTERADO DE LEAD PARA CLIENTE
IF @object_type in ('2') and @transaction_type in ('U')
BEGIN
	IF 
		(SELECT TOP 1 CardType FROM ACRD WHERE CardCode = @list_of_cols_val_tab_del ORDER BY LogInstanc DESC) = 'L' 
		AND
		(SELECT CardType FROM OCRD WHERE CardCode = @list_of_cols_val_tab_del) = 'C'
		AND 
		(SELECT ISNULL(U_DWU_IgnoraAlerta,'N') FROM OCRD WHERE CardCode = @list_of_cols_val_tab_del) = 'N'
		AND 
		(SELECT ISNULL(U_DWU_Origem,'') FROM OCRD WHERE CardCode = @list_of_cols_val_tab_del) = 'W'
	BEGIN
		Select @error = -1, @error_message = '[AlertaCRMOne] Deseja alterar o cadastro de LEAD para CLIENTE?'
		select @error, @error_message
	END
END

-- REDEFINE O CAMPO U_DWU_IgnoraAlerta PARA 'N' PARA CAIR NOVAMENTE NA VALIDAÇÃO DE ATUALIZAÇÃO
IF @object_type in ('2') and @transaction_type in ('A','U')
BEGIN
	IF (SELECT CardType FROM OCRD WHERE CardCode = @list_of_cols_val_tab_del) = 'L'
	BEGIN
		UPDATE OCRD SET U_DWU_IgnoraAlerta = 'N' WHERE CardCode = @list_of_cols_val_tab_del
	END
END
-- ################################################
-- FIM - Alerta Lead para Cliente - CRM ONE
-- ################################################

Ahora, vea la transaction HANA para la tratativa:

-- ################################################
-- INÍCIO - Alerta Lead para Cliente - CRM ONE
-- ################################################
IF :object_type = ('2')
THEN
	DECLARE CardTypeLog NVARCHAR(20);
	DECLARE CardType NVARCHAR(20);
	DECLARE U_DWU_IgnoraAlerta NVARCHAR(20);
	DECLARE U_DWU_Origem NVARCHAR(20);
	
	----------------------------------------------------------------------------------
	-- VALIDA NOVO CADASTRO DO TIPO CLIENTE
	----------------------------------------------------------------------------------
	IF :transaction_type = ('A') 
		THEN 
			SELECT (SELECT "CardType" FROM OCRD WHERE "CardCode" = :list_of_cols_val_tab_del) INTO CardType FROM DUMMY;
			SELECT (SELECT IFNULL("U_DWU_IgnoraAlerta", 'N') FROM OCRD WHERE "CardCode" = :list_of_cols_val_tab_del) INTO U_DWU_IgnoraAlerta FROM DUMMY;
			SELECT (SELECT IFNULL("U_DWU_Origem", '') FROM OCRD WHERE "CardCode" = :list_of_cols_val_tab_del) INTO U_DWU_Origem FROM DUMMY;
			
			IF :CardType = 'C' AND :U_DWU_IgnoraAlerta = 'N' AND :U_DWU_Origem = 'W' 
				THEN 
					error_message := '[AlertaCRMOne] Deseja inserir o cadastro diretamente como CLIENTE?';
		            error := 1;
			END IF;
	END IF;
	
	----------------------------------------------------------------------------------
	-- VALIDA SE O CADASTRO ESTÁ SENDO ALTERADO DE LEAD PARA CLIENTE
	----------------------------------------------------------------------------------
	IF :transaction_type = ('U') 
		THEN 
			SELECT (SELECT TOP 1 "CardType" FROM ACRD WHERE "CardCode" = :list_of_cols_val_tab_del ORDER BY "LogInstanc" DESC) INTO CardTypeLog FROM DUMMY;
			SELECT (SELECT "CardType" FROM OCRD WHERE "CardCode" = :list_of_cols_val_tab_del) INTO CardType FROM DUMMY;
			SELECT (SELECT IFNULL("U_DWU_IgnoraAlerta", 'N') FROM OCRD WHERE "CardCode" = :list_of_cols_val_tab_del) INTO U_DWU_IgnoraAlerta FROM DUMMY;
			SELECT (SELECT IFNULL("U_DWU_Origem", '') FROM OCRD WHERE "CardCode" = :list_of_cols_val_tab_del) INTO U_DWU_Origem FROM DUMMY;
			
			IF :CardTypeLog = 'L' AND :CardType = 'C' AND :U_DWU_IgnoraAlerta = 'N' AND :U_DWU_Origem = 'W' 
				THEN 
					error_message := '[AlertaCRMOne] Deseja alterar o cadastro de LEAD para CLIENTE?';
		            error := 1;
				END IF;
	END IF;
	----------------------------------------------------------------------------------
	-- REDEFINE O CAMPO U_DWU_IgnoraAlerta PARA 'N' PARA CAIR NOVAMENTE NA VALIDAÇÃO DE ATUALIZAÇÃO
	----------------------------------------------------------------------------------
	IF :transaction_type='A' OR :transaction_type='U'
		THEN 
			SELECT (SELECT "CardType" FROM OCRD WHERE "CardCode" = :list_of_cols_val_tab_del) INTO CardType FROM DUMMY;
			IF :CardType = 'L' 
				THEN 
					UPDATE OCRD SET "U_DWU_IgnoraAlerta" = 'N' WHERE "CardCode" = :list_of_cols_val_tab_del;
			END IF;
	END IF;
	
END IF;	
-- ################################################
-- FIM - Alerta Lead para Cliente - CRM ONE
-- ################################################

Listo!

Ahora puede crear esteas alertas en las ventanas existentes del CRM One WEB y personalizar aun mas el ambiente de el CRM One.

Esse artigo foi útil?
0 out Of 5 Stars
5 Stars 0%
4 Stars 0%
3 Stars 0%
2 Stars 0%
1 Stars 0%
Como podemos melhorar este artigo?
Precisa de ajuda?
Índice