USE [TryNFeOnline]
GO

ALTER TABLE [dbo].[NFProduto] ADD 
[icmsEfetivoPerReducaoBC] [decimal] (18,4) NULL,
[icmsEfetivoBaseCalculo] [decimal] (18,4) NULL,
[icmsEfetivoAliq] [decimal] (18,4) NULL,
[icmsEfetivoValor] [decimal] (18,4) NULL,
[pesoBrutoProduto] [decimal] (18,4) NULL
GO
ALTER TABLE [dbo].[produto] ADD 
[codigoBeneficioFiscal] [varchar] (20) COLLATE Latin1_General_CI_AS NULL,
[pesoBrutoProduto] [decimal] (18,4) NULL
GO
ALTER TABLE [dbo].[configuracoes] ADD 
[idnBloquearFechamentoCaixaComposicaoDiferenteCalculada] [bit] NULL,
[idnBloquearAberturaNovoCaixaSemFecharAnteriores] [bit] NULL,
[codigoUnidadeMedidaPadraoCTe] [varchar] (10) COLLATE Latin1_General_CI_AS NULL,
[tipoMedidaPadraoCTe] [varchar] (30) COLLATE Latin1_General_CI_AS NULL,
[idnNaoCadastrarCodigoBarrasImportacaoXML] [bit] NULL,
[idnPermitirReabrirOSApenasOperadorEncerramento] [bit] NULL
GO
ALTER TABLE [dbo].[emitente] ADD 
[usuarioATM] [varchar] (50) COLLATE Latin1_General_CI_AS NULL,
[senhaATM] [varchar] (50) COLLATE Latin1_General_CI_AS NULL,
[codigoATM] [varchar] (50) COLLATE Latin1_General_CI_AS NULL
GO
CREATE TABLE [dbo].[EmailConta]
(
	[id] [int] IDENTITY (1,1) NOT NULL,
	[idFilial] [int] NOT NULL,
	[servidor] [varchar] (100) COLLATE Latin1_General_CI_AS NULL,
	[porta] [int] NULL,
	[utilizaSSL] [bit] NULL,
	[usuario] [varchar] (100) COLLATE Latin1_General_CI_AS NULL,
	[senha] [varchar] (100) COLLATE Latin1_General_CI_AS NULL,
	CONSTRAINT [PK_EmailConta] PRIMARY KEY CLUSTERED
	(
		[id] ASC
	) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY  = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[ATMInfComplementar]
(
	[id] [int] IDENTITY (1,1) NOT NULL,
	[idATMAverbacaoDeclaracao] [int] NOT NULL,
	[codigo] [varchar] (5) COLLATE Latin1_General_CI_AS NULL,
	[descricao] [varchar] (300) COLLATE Latin1_General_CI_AS NULL,
	CONSTRAINT [PK_ATMAverbacaoDeclaracaoInfComplementar] PRIMARY KEY CLUSTERED
	(
		[id] ASC
	) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY  = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[EmailMensagemAnexo]
(
	[id] [int] IDENTITY (1,1) NOT NULL,
	[idEmailMensagem] [int] NOT NULL,
	[arquivoAnexo] [varchar] (max) COLLATE Latin1_General_CI_AS NULL,
	CONSTRAINT [PK_EmailMensagemAnexo] PRIMARY KEY CLUSTERED
	(
		[id] ASC
	) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY  = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[EmailMensagem]
(
	[id] [int] IDENTITY (1,1) NOT NULL,
	[idEmailConta] [int] NOT NULL,
	[uniqueId] [bigint] NOT NULL,
	[enderecoEnvio] [varchar] (100) COLLATE Latin1_General_CI_AS NULL,
	[assunto] [varchar] (200) COLLATE Latin1_General_CI_AS NULL,
	[texto] [varchar] (max) COLLATE Latin1_General_CI_AS NULL,
	[data] [datetime] NULL,
	CONSTRAINT [PK_EmailMensagem] PRIMARY KEY CLUSTERED
	(
		[id] ASC
	) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY  = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[ATMErros]
(
	[id] [int] IDENTITY (1,1) NOT NULL,
	[idATMAverbacaoDeclaracao] [int] NOT NULL,
	[codigo] [varchar] (5) COLLATE Latin1_General_CI_AS NULL,
	[descricao] [varchar] (300) COLLATE Latin1_General_CI_AS NULL,
	[valorEsperado] [varchar] (100) COLLATE Latin1_General_CI_AS NULL,
	[valorInformado] [varchar] (100) COLLATE Latin1_General_CI_AS NULL,
	CONSTRAINT [PK_ATMAverbacaoDeclaracaoErros] PRIMARY KEY CLUSTERED
	(
		[id] ASC
	) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY  = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[ATMDadosSeguro]
(
	[id] [int] IDENTITY (1,1) NOT NULL,
	[idATMAverbacaoDeclaracao] [int] NOT NULL,
	[numeroAverbacao] [varchar] (50) COLLATE Latin1_General_CI_AS NULL,
	[cnpjSeguradora] [varchar] (20) COLLATE Latin1_General_CI_AS NULL,
	[nomeSeguradora] [varchar] (50) COLLATE Latin1_General_CI_AS NULL,
	[numeroApolice] [varchar] (50) COLLATE Latin1_General_CI_AS NULL,
	[tipoMovimento] [int] NULL,
	[tipoDDR] [int] NULL,
	[valorAverbado] [decimal] (18,2) NULL,
	[ramoAverbado] [varchar] (5) COLLATE Latin1_General_CI_AS NULL,
	CONSTRAINT [PK_ATMDadosSeguro] PRIMARY KEY CLUSTERED
	(
		[id] ASC
	) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY  = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

CREATE TABLE [dbo].[ATMAverbacaoDeclaracao]
(
	[id] [int] IDENTITY (1,1) NOT NULL,
	[idNotaFiscal] [int] NOT NULL,
	[idFilial] [int] NOT NULL,
	[idnAverbacaoCTe] [bit] NOT NULL,
	[idnDeclaracaoMDFe] [bit] NOT NULL,
	[acao] [int] NOT NULL,
	[servico] [int] NOT NULL,
	[numero] [varchar] (20) COLLATE Latin1_General_CI_AS NULL,
	[serie] [varchar] (10) COLLATE Latin1_General_CI_AS NULL,
	[filial] [varchar] (10) COLLATE Latin1_General_CI_AS NULL,
	[cnpjCliente] [varchar] (20) COLLATE Latin1_General_CI_AS NULL,
	[tipoDocumento] [int] NULL,
	[infAdicional] [varchar] (50) COLLATE Latin1_General_CI_AS NULL,
	[dataAverbacaoChancela] [datetime] NULL,
	[protocolo] [varchar] (50) COLLATE Latin1_General_CI_AS NULL,
	[mensagemErro] [varchar] (max) COLLATE Latin1_General_CI_AS NULL,
	[dataHoraNovaConsulta] [datetime] NULL,
	[idMDFeInclusaoCondutor] [int] NULL,
	CONSTRAINT [PK_ATMAverbacaoDeclaracao] PRIMARY KEY CLUSTERED
	(
		[id] ASC
	) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY  = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

ALTER TABLE [dbo].[ATMAverbacaoDeclaracao] ADD CONSTRAINT [FK_ATMAverbacaoDeclaracao_emitente] FOREIGN KEY
	(
		[idFilial]
	)
	REFERENCES [dbo].[emitente]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[ATMAverbacaoDeclaracao] ADD CONSTRAINT [FK_ATMAverbacaoDeclaracao_mdfeInclusaoCondutor] FOREIGN KEY
	(
		[idMDFeInclusaoCondutor]
	)
	REFERENCES [dbo].[mdfeInclusaoCondutor]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[ATMAverbacaoDeclaracao] ADD CONSTRAINT [FK_ATMAverbacaoDeclaracao_notafiscal] FOREIGN KEY
	(
		[idNotaFiscal]
	)
	REFERENCES [dbo].[notafiscal]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[EmailMensagemAnexo] ADD CONSTRAINT [FK_EmailMensagemAnexo_EmailMensagem] FOREIGN KEY
	(
		[idEmailMensagem]
	)
	REFERENCES [dbo].[EmailMensagem]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[EmailMensagem] ADD CONSTRAINT [FK_EmailMensagem_EmailConta] FOREIGN KEY
	(
		[idEmailConta]
	)
	REFERENCES [dbo].[EmailConta]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[ATMDadosSeguro] ADD CONSTRAINT [FK_ATMDadosSeguro_ATMAverbacaoDeclaracao] FOREIGN KEY
	(
		[idATMAverbacaoDeclaracao]
	)
	REFERENCES [dbo].[ATMAverbacaoDeclaracao]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[ATMErros] ADD CONSTRAINT [FK_ATMErros_ATMAverbacaoDeclaracao] FOREIGN KEY
	(
		[idATMAverbacaoDeclaracao]
	)
	REFERENCES [dbo].[ATMAverbacaoDeclaracao]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[EmailConta] ADD CONSTRAINT [FK_EmailConta_emitente] FOREIGN KEY
	(
		[idFilial]
	)
	REFERENCES [dbo].[emitente]
	(
		[id]
	)
GO

ALTER TABLE [dbo].[ATMInfComplementar] ADD CONSTRAINT [FK_ATMInfComplementar_ATMAverbacaoDeclaracao] FOREIGN KEY
	(
		[idATMAverbacaoDeclaracao]
	)
	REFERENCES [dbo].[ATMAverbacaoDeclaracao]
	(
		[id]
	)
GO
--UPDATES
GO
UPDATE produto set pesoBrutoProduto = pesoProduto where pesoProduto > 0

GO
UPDATE Telas SET idnPermiteAbrirVarias = 0 where idnPermiteAbrirVarias is null

--Excluídos
GO
DELETE pais WHERE id = 9 --Antilhas Holandesas
GO
DELETE pais WHERE id = 41 --Canarias, Ilhas
GO
DELETE pais WHERE id = 123 --Johnston, Ilhas
GO
DELETE pais WHERE id = 127 --Lebuan
GO
DELETE pais WHERE id = 139 --Madeira, Ilha da
GO
DELETE pais WHERE id = 155 --Midway, Ilhas
GO
DELETE pais WHERE id = 241 --Wake, Ilha


--Incluídos
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (246, 'Aland, Ilhas', 153)
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (247, 'Antartica', 420)
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (248, 'Bouvet, Ilha', 1023)
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (249, 'Ilhas Georgia do Sul e Sandwich do Sul', 2925)
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (250, 'Ilha Heard e Ilhas Mcdonald', 3433)
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (251, 'Sao Bartolomeu', 6939)
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (252, 'Ilhas de Sao Martinho (Parte Francesa)', 6980)
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (253, 'Sao Martinho, Ilha de (Parte Francesa)', 6998)
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (254, 'Svalbard e Jan Mayern', 7552)
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (255, 'Terras Austrais e Antarticas Francesas', 7811)
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (256, 'Wallis e Futuna, Ilhas', 8753)


--Códigos alterados
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (257, 'Curacao', 2003) --incluindo pois não existe
GO
UPDATE pais SET descricao = 'Guernsey, Ilha Do Canal (Inclui Alderney e Sark)', codnacional = 3212 where id = 40
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (258, 'Jersey', 3930) --incluindo pois não existe
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (259, 'Bonaire', 990) --incluindo pois não existe
GO
INSERT INTO [pais] ([id],[descricao],[codnacional]) VALUES (260, 'Mayotte (Ilhas Francesas)', 4898)


--Nome alterado
GO
UPDATE pais SET descricao = 'Kuwait' where id = 61


--Alteracoes da NFCe 4.00
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaznet.ac.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.hml.sefaznet.ac.gov.br/nfce/consulta' WHERE UF = 'AC'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaz.al.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefaz.al.gov.br/nfce/consulta' WHERE UF = 'AL'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaz.am.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefaz.am.gov.br/nfce/consulta' WHERE UF = 'AM'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaz.ap.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefaz.ap.gov.br/nfce/consulta' WHERE UF = 'AP'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'http://www.sefaz.ba.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'http://hinternet.sefaz.ba.gov.br/nfce/consulta' WHERE UF = 'BA'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaz.ce.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefaz.ce.gov.br/nfce/consulta' WHERE UF = 'CE'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.fazenda.df.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.fazenda.df.gov.br/nfce/consulta' WHERE UF = 'DF'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaz.es.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefaz.es.gov.br/nfce/consulta' WHERE UF = 'ES'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaz.go.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.nfce.go.gov.br/post/ver/214413/consulta-nfc-e-homologacao' WHERE UF = 'GO'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaz.ma.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefaz.ma.gov.br/nfce/consulta' WHERE UF = 'MA'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.fazenda.mg.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.fazenda.mg.gov.br/nfce/consulta' WHERE UF = 'MG'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.dfe.ms.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.dfe.ms.gov.br/nfce/consulta' WHERE UF = 'MS'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaz.mt.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefaz.mt.gov.br/nfce/consulta' WHERE UF = 'MT'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefa.pa.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefa.pa.gov.br/nfce/consulta' WHERE UF = 'PA'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.receita.pb.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.receita.pb.gov.br/nfcehom' WHERE UF = 'PB'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'nfce.sefaz.pe.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'nfce.sefaz.pe.gov.br/nfce/consulta' WHERE UF = 'PE'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaz.pi.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefaz.pi.gov.br/nfce/consulta' WHERE UF = 'PI'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'http://www.fazenda.pr.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'http://www.fazenda.pr.gov.br/nfce/consulta' WHERE UF = 'PR'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.fazenda.rj.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.fazenda.rj.gov.br/nfce/consulta' WHERE UF = 'RJ'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.set.rn.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.set.rn.gov.br/nfce/consulta' WHERE UF = 'RN'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefin.ro.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefin.ro.gov.br/nfce/consulta' WHERE UF = 'RO'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaz.rr.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefaz.rr.gov.br/nfce/consulta' WHERE UF = 'RR'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaz.rs.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefaz.rs.gov.br/nfce/consulta' WHERE UF = 'RS'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaz.se.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefaz.se.gov.br/nfce/consulta' WHERE UF = 'SE'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'https://www.nfce.fazenda.sp.gov.br/consulta', enderecoConsultaNFCeHomologacao = 'https://www.homologacao.nfce.fazenda.sp.gov.br/consulta' WHERE UF = 'SP'
GO
UPDATE estado SET enderecoConsultaNFCeProducao = 'www.sefaz.to.gov.br/nfce/consulta', enderecoConsultaNFCeHomologacao = 'www.sefaz.to.gov.br/nfce/consulta' WHERE UF = 'TO'
GO
UPDATE estado SET consultaNFCeProducao = 'http://www.fazenda.df.gov.br/nfce/qrcode' WHERE UF = 'DF'
GO
UPDATE estado SET consultaNFCeProducao = 'nfce.sefaz.ma.gov.br/portal/consultarNFCe.jsp', consultaNFCeHomologacao = 'homologacao.sefaz.ma.gov.br/portal/consultarNFCe.jsp' WHERE UF = 'MA'
GO
UPDATE estado SET consultaNFCeHomologacao = 'http://www.receita.pb.gov.br/nfcehom' WHERE UF = 'PB'
GO
UPDATE estado SET consultaNFCeProducao = 'http://www.fazenda.pr.gov.br/nfce/qrcode', consultaNFCeHomologacao = 'http://www.fazenda.pr.gov.br/nfce/qrcode' WHERE UF = 'PR'
GO
UPDATE estado SET consultaNFCeProducao = 'http://www.nfce.se.gov.br/nfce/qrcode', consultaNFCeHomologacao = 'http://www.hom.nfe.se.gov.br/portal/consultarNFCe.jsp' WHERE UF = 'SE'
GO
UPDATE estado SET consultaNFCeProducao = 'http://www.sefaz.to.gov.br/nfce', consultaNFCeHomologacao = 'http://homologacao.sefaz.to.gov.br/nfce' WHERE UF = 'TO'
GO
INSERT INTO VERSAO(VERSAO, VERSAOATUALIZACAO, DATAATUALIZACAO) VALUES(345, 603, GETDATE());