Foros del Web » Programando para Internet » Python »

Porblema con IF

Estas en el tema de Porblema con IF en el foro de Python en Foros del Web. El siguiente código se utiliza para dejar una bitácora de información procesada en un sistema integral y posterior envío a una solución SAP. Ahora bien, ...
  #1 (permalink)  
Antiguo 02/07/2011, 09:45
 
Fecha de Ingreso: julio-2011
Mensajes: 2
Antigüedad: 12 años, 9 meses
Puntos: 0
Busqueda Porblema con IF

El siguiente código se utiliza para dejar una bitácora de información procesada en un sistema integral y posterior envío a una solución SAP.

Ahora bien, al principio valida que exista un nuevo cliente y si existe un nuevo cliente envía las facturas pendientes de envío a SAP.

Lo que deseo es cambiar la validación en donde solo valide si existe un nuevo cliente, en caso de que no exista aún así envíe la información de la facturas y no quede limitado a la creación del nuevo cliente

gracias por la ayuda:



import sys,os,time,dircache,re,traceback,datetime
from ftplib import FTP

host = 'x.x.x.x'
user1 = 'usuario'
pass1 = 'contraseña'
remdir = '/'
dircli = '/export//files/SAP/Clientes/'
dirfac = '/export//files/SAP/Facturas/'
dirsap = '/export//files/SAP/'
b = []
varsynC = []
deldirectorio = dircache.listdir(dircli)
delarchivo= open(dirsap+'DirCli','r').readlines()
p = []
varsynO = []
deldirectorio2 = dircache.listdir(dirfac)
delarchivo2= open(dirsap+'DirFac','r').readlines()


#-------------------------

def desflemado(dfls):
for c in range(len(dfls)):
dfls[c]=dfls[c].split('\n',1)[0]

#-------------------------

def grabar(archivo,variable):
f= open (archivo,'w')
for w in variable:
f.write(w+'\n')
f.close()

#-------------------------

def handleDownload(block):
file.write(block)
print ".",

#---------------------- busqueda de fecha de mes

def mes(abril,mez):
for a in abril:
if a[12:14] == mez:
print a+' es de '+ mez

#----------------------

desflemado(delarchivo)

#----------------------busqueda de

for y in deldirectorio:
if delarchivo.count(y) == 0:
b.append(y)

#----------------------ftp

for cont in b:
try:
try:
ftp = FTP(host,user1,pass1)
ftp.cwd(remdir)
fupload = open(dircli+cont,'rb')
ftp.storlines('STOR '+cont,fupload)
fupload.close()
varsynC.append(cont)
finally:
ftp.quit()
except:
traceback.print_exc()

rbc = open(dirsap+'bitacoraC','r').readlines()
rsc = open(dirsap+'DirCli','r').readlines()
desflemado(rbc)
desflemado(rsc)

#--------------------------

for r in varsynC:
rsc.append(r)
rbc.append(r+' fue subido exitosamente '+datetime.datetime.now().__str__())

#--------------------------

grabar(dirsap+'bitacoraC',rbc)
grabar(dirsap+'DirCli',rsc)


################################################## #################################


if len(b) != 0:
time.sleep(1000)

#----------------------

desflemado(delarchivo2)

#----------------------busqueda de

for z in deldirectorio2:
if delarchivo2.count(z) == 0:
p.append(z)

#----------------------ftp

for kont in p:
try:
try:
ftp = FTP(host,user1,pass1)
ftp.cwd(remdir)
fupload = open(dirfac+kont,'rb')
ftp.storlines('STOR '+kont,fupload)
fupload.close()
varsynO.append(kont)
finally:
ftp.quit()
except:
traceback.print_exc()

rbc2 = open(dirsap+'bitacoraF','r').readlines()
rsc2 = open(dirsap+'DirFac','r').readlines()
desflemado(rbc2)
desflemado(rsc2)

#--------------------------

for p in varsynO:
rsc2.append(p)
rbc2.append(p+' fue subido exitosamente '+datetime.datetime.now().__str__())

#--------------------------

grabar(dirsap+'bitacoraF',rbc2)
grabar(dirsap+'DirFac',rsc2)
  #2 (permalink)  
Antiguo 02/07/2011, 14:43
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Porblema con IF

Por favor pon bien el indentado o sangrado del código.

Intenta usar las etiquetas HIGHLIGHT o CODE.
  #3 (permalink)  
Antiguo 04/07/2011, 12:12
 
Fecha de Ingreso: julio-2011
Mensajes: 2
Antigüedad: 12 años, 9 meses
Puntos: 0
De acuerdo Respuesta: Problema con IF

Código python:
Ver original
  1. import sys,os,time,dircache,re,traceback,datetime
  2. from ftplib import FTP
  3.  
  4. host = '192.168.1.1'
  5. user1 = ''
  6. pass1 = ''
  7. remdir = '/'
  8. dircli = '/export/env/SAP/Clientes/'
  9. dirfac = '/export/env/SAP/Facturas/'
  10. dirsap = '/export/env/SAP/'
  11. b = []
  12. varsynC = []
  13. deldirectorio = dircache.listdir(dircli)
  14. delarchivo= open(dirsap+'DirCli','r').readlines()
  15. p = []
  16. varsynO = []
  17. deldirectorio2 = dircache.listdir(dirfac)
  18. delarchivo2= open(dirsap+'DirFac','r').readlines()
  19.  
  20.  
  21. #-------------------------
  22.  
  23. def desflemado(dfls):
  24.     for c in range(len(dfls)):
  25.         dfls[c]=dfls[c].split('\n',1)[0]
  26.        
  27. #-------------------------
  28.  
  29. def grabar(archivo,variable):
  30.     f= open (archivo,'w')
  31.     for w in variable:
  32.         f.write(w+'\n')
  33.     f.close()
  34.    
  35. #-------------------------
  36.  
  37. def handleDownload(block):
  38.     file.write(block)
  39.     print ".",
  40.  
  41. #---------------------- busqueda de fecha de mes
  42.  
  43. def mes(abril,mez):
  44.     for a in abril:
  45.         if a[12:14] == mez:
  46.             print a+'   es de '+ mez
  47.  
  48. #----------------------
  49.  
  50. desflemado(delarchivo)
  51.  
  52. #----------------------busqueda de
  53.  
  54. for y in deldirectorio:
  55.     if delarchivo.count(y) == 0:
  56.         b.append(y)
  57.  
  58. #----------------------ftp
  59.  
  60. for cont in b:
  61.     try:
  62.         try:
  63.             ftp = FTP(host,user1,pass1)
  64.             ftp.cwd(remdir)
  65.             fupload = open(dircli+cont,'rb')
  66.             ftp.storlines('STOR '+cont,fupload)
  67.             fupload.close()
  68.             varsynC.append(cont)
  69.         finally:
  70.             ftp.quit()
  71.     except:
  72.         traceback.print_exc()
  73.  
  74. rbc = open(dirsap+'bitacoraC','r').readlines()
  75. rsc = open(dirsap+'DirCli','r').readlines()
  76. desflemado(rbc)
  77. desflemado(rsc)
  78.  
  79. #--------------------------
  80.  
  81. for r in varsynC:
  82.     rsc.append(r)
  83.     rbc.append(r+'  fue subido exitosamente '+datetime.datetime.now().__str__())
  84.    
  85. #--------------------------
  86.  
  87. grabar(dirsap+'bitacoraC',rbc)
  88. grabar(dirsap+'DirCli',rsc)
  89.  
  90.  
  91. ###################################################################################
  92.  
  93.  
  94. if len(b) != 0:
  95.     time.sleep(1000)
  96.    
  97.     #----------------------
  98.  
  99.     desflemado(delarchivo2)
  100.  
  101.     #----------------------busqueda de
  102.  
  103.     for z in deldirectorio2:
  104.         if delarchivo2.count(z) == 0:
  105.             p.append(z)
  106.  
  107.     #----------------------ftp
  108.  
  109.     for kont in p:
  110.         try:
  111.             try:
  112.                 ftp = FTP(host,user1,pass1)
  113.                 ftp.cwd(remdir)
  114.                 fupload = open(dirfac+kont,'rb')
  115.                 ftp.storlines('STOR '+kont,fupload)
  116.                 fupload.close()
  117.                 varsynO.append(kont)
  118.             finally:
  119.                 ftp.quit()
  120.         except:
  121.             traceback.print_exc()
  122.  
  123.     rbc2 = open(dirsap+'bitacoraF','r').readlines()
  124.     rsc2 = open(dirsap+'DirFac','r').readlines()
  125.     desflemado(rbc2)
  126.     desflemado(rsc2)
  127.  
  128.     #--------------------------
  129.  
  130.     for p in varsynO:
  131.         rsc2.append(p)
  132.         rbc2.append(p+' fue subido exitosamente '+datetime.datetime.now().__str__())
  133.  
  134.     #--------------------------
  135.  
  136.     grabar(dirsap+'bitacoraF',rbc2)
  137.     grabar(dirsap+'DirFac',rsc2)

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:49.