Segue um exemplo bem simples para tratamento de erros em SQL SERVER utilizando Try / Catch.BEGIN TRANSACTIONBEGIN TRY BEGIN INSERT INTO tabela (Campos...) VALUES(<valores>) COMMIT TRANSACTION END SELECT 'OK' as 'TipoRetorno' END TRYBEGIN CATCH 'ERRO' as 'TipoRetorno' ROLLBACK TRANSACTION -- Desfazendo as alteracoes na base END CATCH Caso queria algo mais incrementado, aonde a procedure retorne a descricao do erro, utilize as funcoes internas do SQL SERVER ERROR_NUMBER(), ERROR_SEVERITY(), ERROR_STATE(), ERROR_PROCEDURE() , ERROR_LINE(), ERROR_MESSAGE()BEGIN TRANSACTIONBEGIN TRY BEGIN INSERT INTO tabela (Campos...) VALUES(<valores>) COMMIT TRANSACTION END SELECT 'OK' as 'TipoRetorno'END TRYBEGIN CATCH SELECT 'ERRO' as 'TipoRetorno', ERROR_NUMBER() AS ErrorNumber ,ERROR_SEVERITY() AS ErrorSeverity ,ERROR_STATE() AS ErrorState ,ERROR_PROCEDURE() AS ErrorProcedure ,ERROR_LINE() AS ErrorLine ,ERROR_MESSAGE() AS ErrorMessage; ROLLBACK TRANSACTION -- Desfazendo as alteracoes na base END CATCH Referencias: http://msdn.microsoft.com/pt-br/library/ms175976(SQL.105).aspx Segue mais uma excelente alternativa e de facil utilizacao para emissao de cupom fiscal eletronico.Physis PDV - Emissor de cupom fiscal eletronicohttp://www.aedos.me/Compare as diferentes versoes do Physis PDV e escolha a mais adequada para voce.Todas as versoes incluem atualizacoes constantes, suporte ilimitado por telefone ou e-mail, tornando-se assim o melhor custo beneficio do mercado atual.O Physis PDV foi projetado para atender desde pequenos negocio ate para trabalhar com grande volume de dados, sem comprometer o desempenho, por este motivo todas as versoes podem utilizar o Firebird que alem de avancados recursos de seguranca, oferecem desempenho, escalabilidade e alta disponibilidade.Para garantir que voce tenha uma otima experiencia e certeza na escolha do nosso sistema, disponibilizamos o Download do Physis PDV gratuitamente para avaliacao durante 15 dias.A licenca ja inclui o Suporte Tecnico sem taxas adicionais. Inclui tambem os modulos para emissao de NFC-e ou CF-e SAT (ilimitado). Certa vez precisei criar um novo relatorio para um cliente na qual envolveria varias consultas de tabelas distintas.Vou demonstrar abaixo apenas um trecho do codigo para exemplificar a criacao de uma tabela temporaria no Mysql e como popular seus campos:CREATE PROCEDURE `sp_relat_det`(var_datini varchar(10), var_datfim varchar(10) )BEGIN/* criando a tabela temporaria */CREATE TEMPORARY TABLE relaTbltempFinal( datainc varchar(7), novos int, confirmados int);/* populando a tabela temporaria a partir de um consulta*//* Essa consulta ira agrupar todos os pedidos realizados dentro do periodo informado pelo usuario*/insert into relaTbltempFinal (datainc)select date_format(datincped, '%m/%Y') as 'datainc'from tbpedido where datincped between var_datini and var_datfimgroup by date_format(datincped, '%m/%Y');/* Aqui eu realizo outra consulta para atualizar os dados dos demais campos 'novos' com um join em uma sub-query com a tabela temporaria */update relaTbltempFinalset novos = (select count(datincped) as total from tbseguro inner join tbpedidosdet on tbpedidosdet.idseg = tbseguro.idseg inner join tbpedido on tbpedido.idped = tbpedidosdet.idped where tbpedido.tipPed = 1 and date_format(datincped, '%m/%Y') = relaTbltempFinal.datainc ) ;select * relaTbltempFinal;END $$DELIMITER ;Resultado final: call sp_relat_det ('2015-01-01', '2015-02-28');datainc - novos 01/2015 - 1002/2015 - 15 Nao e preciso dizer nada...A imagem ja diz tudo."Portanto, vao e facamdiscipulos de todas as nacoes, batizando-os em nome do Pai e do Filho e doEspirito Santo." (Mateus 28:19) PRECISA-SE "E Ele deu uns como apostolos, e outros como profetas, e outros como evangelistas, e outros como pastores e mestres," Efesios 4:11 PRECISA-SE Uma grande obra necessita urgente de trabalhadores de ambos os sexos! Carpinteiros: Para serrar