Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import firebirdsql
- import configparser
- cfg = configparser.ConfigParser()
- cfg.read('C:\\GDOOR Sistemas\\GDOOR PRO\\USUALG.ini')
- dir = cfg.get('BASE', 'DIR')
- host = cfg.get('BASE', 'LOCAL')
- conn = firebirdsql.connect(
- host=host,
- database=dir + 'DATAGES.fdb',
- port=3050,
- user='SYSDBA',
- password='masterkey'
- )
- CST_ICMS = [
- ('00', u'00 - Tributada Integralmente'),
- ('10', u'10 - Tributada e com cobrança do ICMS por substituição tributária'), # noqa
- ('20', u'20 - Com redução de base de cálculo'),
- ('30', u'30 - Isenta ou não tributada e com cobrança do ICMS por substituição tributária'), # noqa
- ('40', u'40 - Isenta'),
- ('41', u'41 - Não tributada'),
- ('50', u'50 - Suspensão'),
- ('51', u'51 - Diferimento'),
- ('60', u'60 - ICMS cobrado anteriormente por substituição tributária'),
- ('70', u'70 - Com redução de base de cálculo e cobrança do ICMS por substituição tributária'), # noqa
- ('90', u'90 - Outras')
- ]
- CSOSN_SIMPLES = [
- ('101', u'101 - Tributada pelo Simples Nacional com permissão de crédito'),
- ('102', u'102 - Tributada pelo Simples Nacional sem permissão de crédito'),
- ('103', u'103 -Isenção do ICMS no Simples Nacional para faixa de receita bruta'), # noqa
- ('201', u'201 - Tributada pelo Simples Nacional com permissão de crédito e com cobrança do ICMS por substituição tributária'), # noqa
- ('202', u'202 - Tributada pelo Simples Nacional sem permissão de crédito e com cobrança do ICMS por substituição tributária'), # noqa
- ('203', u'203 - Isenção do ICMS no Simples Nacional para faixa de receita bruta e com cobrança do ICMS por substituição tributária'), # noqa
- ('300', u'300 - Imune'),
- ('400', u'400 - Não tributada pelo Simples Nacional'),
- ('500', u'500 - ICMS cobrado anteriormente por substituição tributária (substituído) ou por antecipação'), # noqa
- ('900', u'900 - Outros')
- ]
- emitente = conn.cursor()
- emitente.execute('SELECT EMITENTE.OPT_SIMPLES FROM EMITENTE')
- ok = emitente.fetchone()
- x = 1
- while x == 1:
- st = 0
- st_novo = 0
- if ok[0] == 1:
- st_a = 0
- while st_a == 0:
- st = input("CSOSN a ser substituido ? ")
- if st in CSOSN_SIMPLES:
- st_a = 1
- st_a = 0
- while st_a == 0:
- st_novo = input("CSOSN novo ? ")
- if st_novo in CSOSN_SIMPLES:
- st_a = 1
- else:
- st_a = 0
- while st_a == 0:
- st = input("CST ser substituido ? ")
- if st in CST_ICMS:
- st_a = 1
- st_a = 0
- while st_a == 0:
- st_novo = input("CST novo ? ")
- if st_novo in CST_ICMS:
- st_a = 1
- elo = input("Elo")
- x = input("Deseja inserir outro ? Digite qualquer coisa para sim e 0 para não")
- buscas = [{'antigo': st, 'novo': st_novo, 'elo': elo}]
- for busca in buscas:
- at = conn.cursor()
- query = 'UPDATE ESTOQUE SET ESTOQUE.ST = "{}", ESTOQUE.ELO = "{}" WHERE ESTOQUE.ST ="{}"'.format(busca['novo'], busca['elo'], busca['antigo'])
- at.execute(query)
- conn.commit()
- conn.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement