lazermak.py 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. # -*- coding: utf-8 -*-
  2. from mysqlmak import *
  3. import os
  4. import sys
  5. import datetime
  6. import platform
  7. import codecs
  8. bas="I8,A,001"+"\n"+"D3"+"\n"+"R0,0"+"\n"+"q600"+"\n"+"I8,E,001"+"\n"+"N"+"\n"
  9. son="P1"
  10. liko=""
  11. liko+=bas
  12. aralik=22
  13. basno=20
  14. mak=mysqlmak()
  15. sql=codecs.open(sys.argv[2],'r','iso-8859_9').read()#"select stok_kodu,stok_adi from tblstsabit where stok_kodu like '60204%'"
  16. rows=mak.calistir(sql)
  17. veriler=[]
  18. #ornek format
  19. formatlar=['{:6s}','{:11s}','{:15s}','{:7.2f}']
  20. for row in rows:
  21. satir=""
  22. #i=0
  23. eud=5
  24. for ro in row:
  25. if type(ro)==str:
  26. #belli karakter kadar almak
  27. if len(ro)>eud:
  28. eud=20
  29. if len(ro)>19:
  30. ro=ro[0:20]
  31. eud=20
  32. otoformat='{:'+str(eud+2)+'s}'
  33. else:
  34. otoformat='{:7.2f}'
  35. #satir+=formatlar[i].format(ro)
  36. satir+=otoformat.format(ro)
  37. #i+=1
  38. #satir=formatsab.format(row[0],row[1],row[2],row[3])
  39. veriler.append(satir)
  40. #ornek veriler
  41. #veriler=["t1","t2","t3","t4"]
  42. veriler.reverse()
  43. satno=basno+aralik*2
  44. orta=""
  45. for veri in veriler:
  46. orta+="A600,"+str(satno)+",2,2,1,1,N,"+'"'+veri.decode("latin5")+'"'+"\n"
  47. satno+=aralik
  48. liko+=orta+"\n"
  49. liko+="A600,"+str(basno)+",2,2,1,1,N,"+'"'+"giom zebra@lazer.py yazdirma modulu"+'"'+"\n"
  50. liko+=son+"\n"
  51. #open("gcc.prn","w").write(liko)
  52. codecs.open("gcc.prn", "w","latin5").write(liko)
  53. if str(sys.argv[1])=="yaz":
  54. os.system("./yazdir.sh gcc.prn")
  55. #print sys.argv
  56. print liko
  57. #print '{:10s} {:3d} {:7.2f}'.format('xxx', 123, 98)