Please note, this is a STATIC archive of website www.tutorialspoint.com from 11 May 2019, cach3.com does not collect or store any user information, there is no "phishing" involved.
Tutorialspoint

Execute Lua Online

local MyClass = {} 
MyClass.__index = MyClass 

function MyClass.new(init)
  local self = setmetatable({}, MyClass)
  self.value = init
  return self
end

-- print()
function MyClass.print(txt)
    print(txt)     
end    

-- Uncomment in lua_online oder lokalem Editor 
version = "Lua 5.3"
if ( _VERSION == version )
then
 -- Generate tex class 
 tex = MyClass.new()
end



-- Defintion der Register Klasse
Register = { tab = {}, size = 10 } 

function Register:new (tt,size)
      o = {}
      setmetatable(o, self)
      self.__index = self
      self.tab = tt
      self.size = size
      return o
end

-- get table 
function Register:get ()
      return self.tab
end

function Register:tabnorm()
	empty = {"\\hspace{\\fill}",""}
	for i=0,self.size do
	    line = self.tab[i]
		if (line == nil ) 
		then
			--tex.print("nok ")
			self.tab[i] = empty
		else 
			--tex.print("ok" .. line[2])
		end
	end
end;


-- 
-- Erstellt ein Register der Laenge n
--
function Register:items()
  self:tabnorm()
  n = self.size
  -- Höhe in cm
  size = 29;
  partial = size/n - 0.426;
  tex.print("\\begin{tabular}{c p{13cm}}");
  for i,line in ipairs(self.tab) do
        tex.print(string.format("\\setitemm{%s}{%scm}",line[1],partial))
        if( i >= n)
           then
              --[ terminate the loop using break statement --]
              break
           end
  end;
  tex.print("\\end{tabular}");
end;

function Register:label(n)
  n = 10
  tex.print("\\ordner{26}{145}{\\small netcarve\\\\technologies\\\\GmbH\\\\Bern}")
  tex.print("{\\small")
  tex.print("{\\centering")
  tex.print("\\textbf{Buchhaltung} \\\\ \\textbf{\\yy} \\\\ \\vspace*{1cm} \\raggedright")
  -- print items 
  for i,line in ipairs(self.tab) do
        tex.print(string.format("%s. %s\\\\",i,string.sub(line[2],1,n)))
  end
  tex.print("}")
  tex.print("}")
end

function Register:label1(n)
  n = 10
  for i,line in ipairs(self.tab) do
        tex.print(string.format("%s. %s\\\\",i,string.sub(line[2],1,n)))
  end
end

-- Dump der internen Tabelle
--
function Register:dump()
     tex.print("\\section{Table Register.tab dump}")
	 tex.print("\\begin{verbatim}")
	 self:tprint(self.tab)
	 tex.print("\\end{verbatim}")
end

-- Recursive Print Funktion
-- 
function Register:tprint (tbl, indent)
 
  if not indent then indent = 0 end
  for k, v in pairs(tbl) do
    formatting = string.rep("  ", indent) .. k .. ": "
    if type(v) == "table" then
      tex.print(formatting)
      self:tprint(v, indent+1)
    elseif type(v) == 'boolean' then
      tex.print(formatting .. tostring(v))      
    else
      tex.print(formatting .. v)
    end
  end
end

tab={}
tab[1] = {"Bilanz/Jahresabschluss", "Bilanz"}
tab[2] = {"Protokoll", "Protokoll"}
tab[3] = {"Steuern", "Steuern"}
tab[4] = {"Mehrwertsteuer", "Mwst"}
tab[5] = {"AHV", "AHV"}
tab[6] = {"Personal", "Personal"}
tab[7] = {"Zürich Versicherung: BVG/UVG/Betriebsversicherung", "BVG/UVG"}
tab[8] = {"Buchhaltung", "Buchhaltung"}
tab[9] = {"Buchungs-Journal", "Journal"}
tab[10] = {"Spesen", "Spesen"}
tab[11] = {"Belege", "Belege"}
tab[12] = {"\\hspace{\\fill}", ""}

table = Register:new(tab,12) 
table:items() 

Advertisements
Loading...

We use cookies to provide and improve our services. By using our site, you consent to our Cookies Policy.