LogicMachine Forum
CSV report - Printable Version

+- LogicMachine Forum (https://forum.logicmachine.net)
+-- Forum: LogicMachine eco-system (https://forum.logicmachine.net/forumdisplay.php?fid=1)
+--- Forum: Scripting (https://forum.logicmachine.net/forumdisplay.php?fid=8)
+--- Thread: CSV report (/showthread.php?tid=1892)



CSV report - akn - 06.02.2019

I have script, bun I need to select values in two different group address ranges. From 1 to 15 and from 20 to 30.
I need get the values in one csv file.

rows = {}
 
-- from 3/0/1 to 3/0/30
addrstart = 1
addrend = 190
 
rows[ #rows + 1 ] = 'name,actual_value,start_month,current_month,previous_month'
 
for i = addrstart, addrend do
  actual_value_obj = grp.find('3/1/' .. i)
  name = actual_value_obj.name
  actual_value = actual_value_obj.value
  start_month = grp.getvalue('2/1/' .. i)
  current_month = grp.getvalue('4/1/' .. i)
  previous_month = grp.getvalue('1/1/' .. i)
 
  rows[ #rows + 1 ] = name .. ',' .. actual_value .. ',' .. start_month .. ',' .. current_month .. ',' .. previous_month
end
 
--csv = table.concat(rows, '\r\n')
csv = string.char(0xEF, 0xBB, 0xBF) .. table.concat(rows, '\r\n')
 
-- read csv report file
--data = storage.get('csv')
to1 = grp.getvalue('7/7/2')
to2 = grp.getvalue('7/7/7')
date = os.date('%Y-%m-%d')
 
 
 
-- send file as report.csv with text/csv mime type
res, err = mailattach('Atskaite par tekoso menesi', 'CSV file attached', 'report-1-90' .. date .. '.csv', csv, 'text/csv')


RE: CSV report - admin - 07.02.2019

Code:
rows = { 'name,actual_value,start_month,current_month,previous_month' } function pushrow(i)   local actual_value_obj = grp.find('3/1/' .. i)   local name = actual_value_obj.name   local actual_value = actual_value_obj.value   local start_month = grp.getvalue('2/1/' .. i)   local current_month = grp.getvalue('4/1/' .. i)   local previous_month = grp.getvalue('1/1/' .. i)   rows[ #rows + 1 ] = name .. ',' .. actual_value .. ',' .. start_month .. ',' .. current_month .. ',' .. previous_month end -- from 3/1/1 to 3/1/15 for i = 1, 15 do   pushrow(i) end -- from 3/1/20 to 3/1/30 for i = 20, 30 do   pushrow(i) end --csv = table.concat(rows, '\r\n') csv = string.char(0xEF, 0xBB, 0xBF) .. table.concat(rows, '\r\n')



RE: CSV report - akn - 30.03.2019

Thanks. All OK