@--NF entrada - Buscar valor do icms monofásico para o dispositivo 23 --regra 1----@ @--Esta regra é utilizada para quando o dispositivo for sugerido automaticamente, pois no momento que a regra @ @ é aberta a nota fiscal ainda não está processada, não permitindo fazer a busca dos valores na tabela E440PCD.--@ Definir Cursor Cur_E075PRO; Definir Cursor Cur_E081ITP; Definir Alfa GERATABELA; Definir Alfa GERAMODULO; Definir Alfa vsCodSnf; Definir Alfa vsCodTns; Definir Alfa vsCodPro; Definir Alfa vCodTab; Se (GERAMODULO = "C"){ @módulo Comercial@ Se (GERATABELA = "E440IPC"){ @Itens Nota de entrada@ vsCodEmp = E440IPC.CodEmp; vsCodFil = E440IPC.CodFil; vsCodFor = E440IPC.CodFor; vsNumNfc = E440IPC.NumNfc; vsCodSnf = E440IPC.CodSnf; vsCodTns = E440IPC.TnsPro; vsCodPro = E440IPC.CodPro; vsQtdRec = E440IPC.QtdRec; Se (vsCodTns = "1401"){ @transação da NF@ Se (GERNCODDFS = 23){ @Código do dispositivo@ @--Buscar a tabela do monofásico do produto--@ Cur_E075PRO.Sql "Select TprImo From E075PRO \ Where CodEmp =:vsCodEmp and \ CodPro =:vsCodPro"; Cur_E075PRO.AbrirCursor(); Se (Cur_E075PRO.Achou) { vCodTab = Cur_E075PRO.TprImo; } Cur_E075PRO.FecharCursor(); @--Buscar o valor da alíquota do icms monofásico na tabela---@ Cur_E081ITP.Sql "Select CodPro,PreBas From E081ITP \ Where CodEmp =:vsCodEmp and \ CodPro =:vsCodPro and \ CodTpr =:vCodTab"; Cur_E081ITP.AbrirCursor(); Se (Cur_E081ITP.Achou) { vAliMono = Cur_E081ITP.PreBas; } Cur_E081ITP.FecharCursor(); @---Calcular o valor do ICMS monofásico destacado--@ vVlrMono = vsQtdRec * vAliMono; GERNVLRAJS = vVlrMono; } } } } a=a; @--NF entrada - Buscar valor do icms monofásico para o dispositivo 23 --regra 2----@ @--Para utilizar esta regra, o dispositivo não pode ser sugerido automaticamente e a nota fiscal precisa ser @ @ processada antes de inserir o dispositivo para poder fazer a busca dos valores na tabela E440PCD.--@ /* Definir ALFA GERAMODULO; Definir ALFA GERATABELA; Definir Numero GERNCODDFS; Definir Numero GERNVLRAJS; Definir Numero GERNVLROUT; Definir Cursor Cur_E440PCD; Definir Alfa vsCodSnf; Definir Alfa vsCodTns; Se (GERAMODULO = "C"){ @módulo Comercial@ Se (GERATABELA = "E440IPC"){ @Itens Nota de entrada@ vsCodEmp = E440IPC.CodEmp; vsCodFil = E440IPC.CodFil; vsCodFor = E440IPC.CodFor; vsNumNfc = E440IPC.NumNfc; vsCodSnf = E440IPC.CodSnf; vsCodTns = E440IPC.TnsPro; Se (vsCodTns = "1401"){ @transação da NF@ Se (GERNCODDFS = 23){ @Código do dispositivo@ @--Buscar os valores do monofásico na tabela E440PCD--@ Cur_E440PCD.Sql "Select QtmBid,VmoIcd,AliImd From E440PCD \ Where CodEmp =:vsCodEmp and \ CodFil =:vsCodFil and \ CodFor =:vsCodFor and \ NumNfc =:vsNumNfc and \ CodSnf =:vsCodSnf"; Cur_E440PCD.AbrirCursor(); Se (Cur_E440PCD.Achou) { vVmoIcd = Cur_E440PCD.VmoIcd; } Cur_E440PCD.FecharCursor(); GERNBASAJS = E140IPV.VlrBru; GERNPERAJS = 4.2; GERNVLRAJS = vVmoIcd; } } } } */ A=A;