CREATE OR ALTER VIEW TBEMPRESA_C(
    RAZAOSOCIAL,
    CODIGO,
    CODIGOANTIGO,
    NOMEFANTASIA,
    CNPJ,
    IE,
    IM,
    COMPLEMENTO,
    ENDERECO,
    BAIRRO,
    CEP,
    CIDADE,
    UF,
    SITE,
    EMAIL,
    FONE,
    FAX,
    CONTATO,
    CELULAR,
    USUARIO_CODIGO,
    DATA,
    STATUS,
    STATUSEXCLUSAO,
    HISTORICO,
    CNAE_CODIGO,
    HABILITA_CLIENTE,
    HABILITA_FORNECEDOR,
    HABILITA_REPRESENTANTE,
    HABILITA_TRANSPORTADORA,
    CONTA_NG,
    EMAIL_XML,
    PLACA,
    CONTA_CONTABIL,
    DATA_ANIVERSARIO,
    DATA_ATUALIZACAO,
    CONTA_CONTABIL2,
    RG,
    RG_ORGAO,
    RG_EMISSAO,
    LATITUDE,
    LONGITUDE,
    ID_ESTRANGEIRO,
    SALESFORCE,
    REGIME_TRIBUTARIO,
    FLAG_FORNECEDOR,
    EMAIL_CPA,
    NOTIFICACAO,
    ECOMMERCE,
    REPRESENTANTE_ID,
    REPLICAR_CLIENTE,
    VENDEDOR_ID,
    NUMERO,
    TRANSPORTADORA_EDI,
    CNPJ_RAIZ2,
    ID_ANTIGO)
AS
select

FN_ELIPSES(s.nome,50) RAZAOSOCIAL
,s.id CODIGO
,s.cod_cliente CODIGOANTIGO
,FN_ELIPSES(coalesce(s.fantasia,s.nome),20) NOMEFANTASIA
,iif(s.cnpj is null , iif(s.cpf is null, null,FN_REMOVER(s.cpf)), iif(char_length(FN_REMOVER(trim(s.cnpj))) > 14, substring(FN_REMOVER(trim( s.cnpj)) from 2 for 15) , FN_REMOVER(trim(s.cnpj)))) CNPJ
,FN_REMOVER(s.ie) IE
,FN_REMOVER(s.im) IM
,FN_ELIPSES(e.complemento,20) COMPLEMENTO
,FN_ELIPSES(e.logradouro,50) ENDERECO
,FN_ELIPSES(e.bairro,20) BAIRRO
,FN_ELIPSES(FN_REMOVER(trim(e.cep)),8) CEP
,e.cidade CIDADE
,e.estado UF
,s.internet SITE
,FN_ELIPSES(s.e_mail,200) EMAIL
,FN_ELIPSES(s.cel,15) FONE
,'' FAX
,FN_ELIPSES(s.contato,20) CONTATO
,FN_ELIPSES(s.cel,15) CELULAR
,186 USUARIO_CODIGO
,iif(s.data_cadastro > '01.01.1900', FN_DATA(s.data_cadastro), null) DATA
,iif(s.desativado = 'F', 1, 0) STATUS
,0 STATUSEXCLUSAO
,s.historico_bloqueio HISTORICO
,s.icmsst_cnae CNAE_CODIGO
--, NATUREZAJURIDICA_CODIGO
,1 HABILITA_CLIENTE
,iif(i.id > 0,1,0) HABILITA_FORNECEDOR
,iif(h.id > 0,1,0) HABILITA_REPRESENTANTE
,iif(j.id > 0,1,0) HABILITA_TRANSPORTADORA
,0 CONTA_NG
,FN_ELIPSES(s.e_mail_nfe,200) EMAIL_XML
,0 PLACA
,s.com_contabil CONTA_CONTABIL
,iif(s.data_aniversario > '01.01.1900', fn_lpad(extract(month from s.data_aniversario),2,'0')||'/'||substring(fn_lpad(extract(year  from s.data_aniversario),4,'0') from 3 for 4), null) DATA_ANIVERSARIO
,iif(s.data_atualizacao > '01.01.1900', FN_DATA(s.data_atualizacao), null) DATA_ATUALIZACAO
,'' CONTA_CONTABIL2
,s.rg RG
,'' RG_ORGAO
,null RG_EMISSAO
,0 LATITUDE
,0 LONGITUDE
,0 ID_ESTRANGEIRO
,0 SALESFORCE
,0 REGIME_TRIBUTARIO
,0 FLAG_FORNECEDOR
,'' EMAIL_CPA
,0 NOTIFICACAO
,0 ECOMMERCE
,iif(b.id > 0, b.id , a.id + 10000 ) REPRESENTANTE_ID
,0 REPLICAR_CLIENTE
,0 VENDEDOR_ID
--,e.en ENDERECO
,NUMERO
,0 TRANSPORTADORA_EDI
,FN_REMOVER(coalesce(s.cnpj, s.cpf)) CNPJ_RAIZ2
,0 ID_ANTIGO

-- select s.cliente, e.*
from CLIENTES s
left join ENDERECOS_CADASTRO e on e.gerador = s.gerador and e.endereco = 0
left join representantes a on a.representante = s.representante
left join CLIENTES b on b.cnpj = a.cnpj
left join representantes   h on h.cpfcnpj = s.cpfcnpj and h.cpfcnpj is not null
left join fornecedores     i on i.cpfcnpj = s.cpfcnpj and i.cpfcnpj is not null
left join transportadoras  j on j.cpfcnpj = s.cpfcnpj and j.cpfcnpj is not null
;

