S'# -*- coding: utf-8 -*-\n\n#--------------------------BANCO DE DADOS DAS INFORMACOES----------------------------------\n\ndb = DAL(\'postgres://postgres:82621932@localhost:5432/infoadministrativo\')\nsession.connect(request, response, db=db)\n\nresponse.generic_patterns = [\'*\'] if request.is_local else []\n\nfrom gluon.tools import Auth, Crud, Service, PluginManager, prettydate\n\nauth = Auth(db)\ncrud, service, plugins = Crud(db), Service(), PluginManager()\n\nauth.settings.extra_fields [\'auth_user\'] = [Field ("id_cidade", "integer")]\n\n## create all tables needed by auth if not custom tables\nauth.define_tables(username=False, signature=False)\n\n## configure email\nmail = auth.settings.mailer\nmail.settings.server = \'logging\' or \'
smtp.gmail.com:587\'\nmail.settings.sender = \'
y...@gmail.com\'\nmail.settings.login = \'username:password\'\n\n## configure auth policy\nauth.settings.registration_requires_verification = False\nauth.settings.registration_requires_approval = False\nauth.settings.reset_password_requires_verification = True\n\n## if you need to use OpenID, Facebook, MySpace, Twitter, Linkedin, etc.\n## register with
janrain.com, write your domain:api_key in private/janrain.key\nfrom gluon.contrib.login_methods.rpx_account import use_janrain\nuse_janrain(auth, filename=\'private/janrain.key\')\n\ne_m={\n \'empty\':\'Este campo \xc3\xa9 obrigat\xc3\xb3rio\',\n \'in_db\':\'Este registro j\xc3\xa1 existe no banco de dados\',\n \'not_in_db\':\'Este registro n\xc3\xa3o existe no banco de dados\',\n \'email\':\'Voc\xc3\xaa precisa inserir um e-mail v\xc3\xa1lido\',\n \'image\':\'O arquivo precisa ser uma imagem v\xc3\xa1lida\',\n \'not_in_set\':\'Voc\xc3\xaa precisa escolher um valor v\xc3\xa1lido\',\n \'not_in_range\':\'Digite um n\xc3\xbamero entre %(min)s e %(max)s\',\n }\n\nnotempty=IS_NOT_EMPTY(error_message=e_m[\'empty\'])\n\n#CRIA LISTA DE MESES PARA COMBOBOX\nmeses=(\'Janeiro\', \'Fevereio\', \'Mar\xc3\xa7o\', \'Abril\',\\\n \'Maio\', \'Junho\', \'Julho\', \'Agosto\', \'Setembro\', \'Outubro\', \'Novembro\', \'Dezembro\')\n\nanos=(\'2011\', \'2011\', \'2012\', \'2013\', \'2014\', \'2015\')\n\nufs=(\'AC\', \'AL\', \'AM\', \'AP\', \'BA\', \'CE\', \'DF\', \'ES\', \'GO\', \'MA\', \'MG\', \'MS\',\\\n \'MT\', \'PA\', \'PB\', \'PE\', \'PI\', \'PR\', \'RJ\', \'RN\', \'RO\', \'RR\', \'RS\', \'SC\', \'SE\', \'SP\', \'TO\')\n\nbancos=(\'Banco do Brasil\', \'Banco Ita\xc3\xba\', \'Banco Bradesco\', \'Caixa Econ\xc3\xb4mica\')\n\nddds=(\'61\', \'62\')\n\ndb.define_table("cadinpc",\n Field("dtcad", "date"),\n Field("mes", "text", length=128, notnull=True),\n Field("ano", "integer", length=4),\n Field(\'valor\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda valor,row: \'R$ %.2f\' % valor),\n Field("zerado", "boolean"),\n auth.signature\n )\ndb.cadinpc.mes.requires=IS_IN_SET(meses)\ndb.cadinpc.ano.requires=IS_IN_SET(anos)\n\n\ndb.define_table("cadcidade",\n Field("nome", length=128, notnull=True, unique=True),\n auth.signature,\n format="%(nome)s"\n )\n\n\ndb.define_table("cadaliquota",\n Field("ano", "integer"),\n Field("dtlei", "date"),\n Field("nrlei", "text", length=10, notnull=True),\n Field(\'valaliqserv\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda valaliqserv,row: \'R$ %.2f\' % valaliqserv, default="11"),\n Field(\'valaliqemp\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda valaliqemp,row: \'R$ %.2f\' % valaliqemp),\n Field("dtinicio", "date"),\n Field("obs", "text", length=128),\n Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n auth.signature\n )\ndb.cadaliquota.ano.requires=IS_IN_SET(anos)\ndb.cadaliquota.id_cid.writable = False\ndb.cadaliquota.id_cid.readable = False #DEIXA O CAMPO INVISIVEL NO FORM\n\n\ndb.define_table("cadempresa",\n Field("ente", "text", length=128),\n Field("EFEndereco", "text", length=128),\n Field("EFBairro", "text", length=128),\n Field("EFCidade", "text", length=128, default=request.vars.cidade),\n Field("EFUF", "text", length=2, default="GO"),\n Field("ecnpj", "text", length=18),\n Field("EFCEP", "text", length=10),\n Field("PagDir", "text", length=128),\n Field("CertEnte", "text", length=128),\n Field("RLNome1", "text", length=128),\n Field("RLCPF1", "text", length=14),\n Field("RLCargo1", "text", length=128),\n Field("RLDDD1", "text", length=4, default="62"),\n Field("RLTelefone1", "text", length=28),\n Field("RLEmail1", "text", length=128),\n Field("Data", "date"),\n Field("EFObs", "text", length=128),\n Field("fundo", "text", length=128),\n Field("fcnpj", "text", length=18),\n Field("UGEndereco", "text", length=128),\n Field("UGBairro", "text", length=128),\n Field("UGCidade", "text", length=128, default=request.vars.cidade),\n Field("UGUF", "text", length=2, default="GO"),\n Field("UGCEP", "text", length=10),\n Field("CertUnidGest", "text", length=128),\n Field("RLNome2", "text", length=128),\n Field("RLCPF2", "text", length=14),\n Field("RLCargo2", "text", length=128),\n Field("RLDDD2", "text", length=4, default="62"),\n Field("RLTelefone2", "text", length=28),\n Field("RLEmail2", "text", length=128),\n Field("RLObs", "text", length=128),\n Field(\'AliqCor\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda AliqCor,row: \'R$ %.2f\' % AliqCor),\n Field(\'AliqJuro\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda AliqJuro,row: \'R$ %.2f\' % AliqJuro),\n Field("Banco", "text", length=128),\n Field("Agencia", "text", length=10),\n Field("Conta", "text", length=12),\n Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n auth.signature,\n format="%(EFRazaoSocial)s"\n )\ndb.cadempresa.EFUF.requires=IS_IN_SET(ufs)\ndb.cadempresa.UGUF.requires=IS_IN_SET(ufs)\ndb.cadempresa.Banco.requires=IS_IN_SET(bancos)\ndb.cadempresa.RLDDD1.requires=IS_IN_SET(ddds)\ndb.cadempresa.RLDDD2.requires=IS_IN_SET(ddds)\ndb.cadempresa.EFCidade.requires=IS_IN_DB(db, \'
cadcidade.id\',\'cadcidade.nome\', \n error_message=e_m[\'not_in_db\'])\ndb.cadempresa.UGCidade.requires=IS_IN_DB(db, \'
cadcidade.id\',\'cadcidade.nome\', \n error_message=e_m[\'not_in_db\'])\ndb.cadempresa.id_cid.writable = False\ndb.cadempresa.id_cid.readable = False #DEIXA O CAMPO INVISIVEL NO FORM\n\n\ndb.define_table("cadmensagem",\n Field("mes", "text", length=18),\n Field("ano", "text", length=4),\n Field("codorg", "integer",),\n Field("obs", "text"),\n Field(\'Rest\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % Rest),\n Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n auth.signature\n )\ndb.cadmensagem.mes.requires=IS_IN_SET(meses)\ndb.cadmensagem.ano.requires=IS_IN_SET(anos)\ndb.cadmensagem.id_cid.writable = False\ndb.cadmensagem.id_cid.readable = False #DEIXA O CAMPO INVISIVEL NO FORM\n\n\ndb.define_table("cadorgao",\n Field("descricao", "text", length=128),\n Field("cnpj", "text", length=18),\n Field("ender", "text", length=128),\n Field("nr", "text", length=8),\n Field("bairro", "text", length=128),\n Field("cep", "text", length=10),\n Field("cid", "text", length=128, default=request.vars.cidade),\n Field("fone", "text", length=18),\n Field("email", "text", length=128),\n Field("obs", "text", length=128),\n Field("patronal", "boolean"),\n Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n auth.signature\n )\ndb.cadorgao.cid.requires=IS_IN_DB(db, \'cadcidade.nome\', \n error_message=e_m[\'not_in_db\'])\ndb.cadorgao.id_cid.writable = False\ndb.cadorgao.id_cid.readable = False #DEIXA O CAMPO INVISIVEL NO FORM\n\n\ndb.define_table("cadpendencias",\n Field("mes", "text", length=128),\n Field("ano", "integer"),\n Field("descricao", "text", length=128),\n Field("situa","boolean"),\n Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n auth.signature\n )\ndb.cadpendencias.mes.requires=IS_IN_SET(meses)\ndb.cadpendencias.ano.requires=IS_IN_SET(anos)\ndb.cadpendencias.id_cid.writable = False\ndb.cadpendencias.id_cid.readable = False #DEIXA O CAMPO INVISIVEL NO FORM\n\ndb.define_table("cadvalores",\n Field("mes", "text", length=128, notnull=True),\n Field("ano", "integer", notnull=True),\n Field("orgao", "text", length=128, default=request.vars.id_org),\n Field("dtpagto", "date", notnull=True),\n Field("dtvenc", "date", notnull=True),\n Field(\'basecalc\',\'decimal(8,2)\', notnull=True, requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % basecal),\n Field(\'servidor\',\'decimal(8,2)\', notnull=True, requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % servidor),\n Field(\'salfamilia\',\'decimal(8,2)\',requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % salfamilia),\n Field(\'patronal\',\'decimal(8,2)\', notnull=True, requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % patronal),\n Field(\'remuneracao\',\'decimal(8,2)\',notnull=True, requires=IS_DECIMAL_IN_RANGE(-1e100,1e100,dot=\',\'),represent = lambda Rest,row: \'R$ %.2f\' % remuneracao),\n Field("qtdeserv", "integer", default="1", notnull=True),\n Field("qtdedep", "integer", default="1", notnull=True),\n Field("id_cid", "integer", length=2, notnull=True, default=request.vars.cidade),\n auth.signature\n )\ndb.cadvalores.orgao.requires=IS_IN_DB(db, \'
cadorgao.id\',\'cadorgao.descricao\', \n error_message=e_m[\'not_in_db\'])\ndb.cadvalores.mes.requires=IS_IN_SET(meses)\ndb.cadvalores.ano.requires=IS_IN_SET(anos)\ndb.cadvalores.id_cid.writable = False\ndb.cadvalores.orgao.writable = False #BLOQUEIA A ALTERACAO NO CAMPO\ndb.cadvalores.id_cid.readable = False \ndb.cadvalores.orgao.readable = False #DEIXA O CAMPO INVISIVEL NO FORM\n'