CREATE OR ALTER procedure sp_notificar_romaneio_pend ( romaneio integer) as declare variable romaneio_id integer; declare variable numero_notafiscal integer; declare variable empresa_id integer; declare variable produto_id integer; declare variable produto_tamanho varchar(5); declare variable status char(1); declare variable perda numeric(18,5); declare variable quantidade_b_romaneio numeric(18,5); declare variable quantidade_l_romaneio numeric(18,5); declare variable nfe_item_id integer; declare variable quantidade_nota numeric(18,5); declare variable produto_descricao varchar(100); declare variable razaosocial varchar(300); declare variable nomefantasia varchar(300); declare variable usuario_id integer; declare variable email varchar(200); declare variable corpo1 blob sub_type 1 segment size 80; declare variable corpo2 blob sub_type 1 segment size 80; declare variable tabela blob sub_type 1 segment size 80; declare variable assunto varchar(500); BEGIN ASSUNTO = 'ROMANEIO (DIVERGÊNCIA ROMANEIO/NOTA FISCAL)'; TABELA = '
ID | '|| 'PRODUTO | '|| 'PERDA | '|| 'QTD. BRUTA | '|| 'QTD. LIQUIDA | '|| 'QTD. NOTA | '|| '
---|---|---|---|---|---|
' || COALESCE(PRODUTO_ID ,'')||' | '; TABELA = TABELA||'' || COALESCE(PRODUTO_DESCRICAO ,'')||' | '; TABELA = TABELA||'' || COALESCE(PERDA ,'')||' | '; TABELA = TABELA||'' || COALESCE(QUANTIDADE_B_ROMANEIO ,'')||' | '; TABELA = TABELA||'' || COALESCE(QUANTIDADE_L_ROMANEIO ,'')||' | '; TABELA = TABELA||'' || COALESCE(QUANTIDADE_NOTA ,'')||' | '; TABELA = TABELA||'
ID: '||COALESCE(:ROMANEIO_ID,'')||'
'; CORPO2 = CORPO2 || 'NF: '||COALESCE(:NUMERO_NOTAFISCAL,'')||'
'; CORPO2 = CORPO2 || 'EMPRESA: '||COALESCE(:EMPRESA_ID||' - '||:RAZAOSOCIAL,'')||'
'; CORPO2 = CORPO2 || 'DIVERGÊNCIA ENTRE QUANTIDADES NO ROMANEIO E NOTA FISCAL. PARA DETALHAMENTO, VERIFIQUE SEU E-MAIL OU CLIQUE NO LINK ACIMA.
'; CORPO2 = CORPO2 || ''; IF( COALESCE(:ROMANEIO_ID,0) > 0 )THEN BEGIN FOR SELECT U.EMAIL, U.CODIGO FROM TBCONTROLE_USUARIO O, TBUSUARIO U WHERE U.CODIGO = O.USUARIO_ID AND O.ID = 901 AND O.VALOR_EXT = '1' INTO :EMAIL, :USUARIO_ID DO BEGIN EXECUTE PROCEDURE SPI_NOTIFICAR( CURRENT_TIMESTAMP, :USUARIO_ID, :ASSUNTO, :CORPO1, 1, 0 ); EXECUTE PROCEDURE SPI_NOTIFICAR( CURRENT_TIMESTAMP, :USUARIO_ID, :ASSUNTO, :CORPO2, 0, 1 ); END END END;