LeenO computo metrico con LibreOffice  3.22.0
Il software libero per la gestione di computi metrici e contabilità lavori.
LeenoVariante.py
Vai alla documentazione di questo file.
1 
2 import SheetUtils
3 import LeenoSheetUtils
4 import LeenoComputo
5 import pyleeno as PL
6 
7 
8 def generaVariante(oDoc, clear):
9  '''
10  Genera il foglio di VARIANTE a partire dal COMPUTO
11  oDoc documento di lavoro
12  clear boolean, se True cancella la variante,
13  se false copia dal computo
14  ritorna il foglio contenente la variante
15  '''
16  if not oDoc.getSheets().hasByName('VARIANTE'):
17  if oDoc.NamedRanges.hasByName("AA"):
18  oDoc.NamedRanges.removeByName("AA")
19  oDoc.NamedRanges.removeByName("BB")
20  oDoc.Sheets.copyByName('COMPUTO', 'VARIANTE', 4)
21  oSheet = oDoc.getSheets().getByName('COMPUTO')
22  lrow = SheetUtils.getUsedArea(oSheet).EndRow
23  SheetUtils.NominaArea(oDoc, 'COMPUTO', '$AJ$3:$AJ$' + str(lrow), 'AA')
24  SheetUtils.NominaArea(oDoc, 'COMPUTO', '$N$3:$N$' + str(lrow), "BB")
25  SheetUtils.NominaArea(oDoc, 'COMPUTO', '$AK$3:$AK$' + str(lrow), "cEuro")
26  oSheet = oDoc.getSheets().getByName('VARIANTE')
27  SheetUtils.setTabColor(oSheet, 16777062)
28  oSheet.getCellByPosition(2, 0).String = "VARIANTE"
29  oSheet.getCellByPosition(2, 0).CellStyle = "comp Int_colonna"
30  oSheet.getCellRangeByName("C1").CellBackColor = 16777062
31  oSheet.getCellRangeByPosition(0, 2, 42, 2).CellBackColor = 16777062
32 
33  # se richiesto, svuota la variante appena generata
34  if clear:
35  lrow = SheetUtils.uFindStringCol('TOTALI COMPUTO', 2, oSheet) - 3
36  oSheet.Rows.removeByIndex(3, lrow)
38 
39  # @@ PROVVISORIO !!!
40  PL._gotoCella(1, 2 + 1)
41 
43  else:
44  oSheet = oDoc.getSheets().getByName('VARIANTE')
45 
46  return oSheet
LeenoSheetUtils.adattaAltezzaRiga
def adattaAltezzaRiga(oSheet)
Definition: LeenoSheetUtils.py:468
SheetUtils.uFindStringCol
def uFindStringCol(sString, nCol, oSheet, start=2, equal=0, up=False)
Definition: SheetUtils.py:403
LeenoVariante.generaVariante
def generaVariante(oDoc, clear)
Definition: LeenoVariante.py:8
SheetUtils.getUsedArea
def getUsedArea(oSheet)
Definition: SheetUtils.py:373
SheetUtils.NominaArea
def NominaArea(oDoc, sSheet, sRange, sName)
Definition: SheetUtils.py:511
LeenoComputo.insertVoceComputoGrezza
def insertVoceComputoGrezza(oSheet, lrow)
Definition: LeenoComputo.py:115
SheetUtils.setTabColor
def setTabColor(oSheet, color)
Definition: SheetUtils.py:363