5 function einheit_callback(data)
7 var einheit = document.getElementById('edit_einheit');
9 if (!einheit) return false;
11 if (data.info[0].einheit.length)
12 einheit.innerHTML = data.info[0].einheit;
15 function select_material(obj)
17 get_info('einheit', {id: obj.options[obj.selectedIndex].value}, einheit_callback);
22 function fetch_tbody()
24 $sql = 'SELECT materialien.material,menge,einheiten.einheit FROM materialverbrauch '
25 . 'JOIN materialien ON materialverbrauch.material = materialien.id '
26 . 'JOIN einheiten ON materialien.einheit = einheiten.id '
27 . 'WHERE einsatz = ' . intval($_POST['id']);
29 $data = query_db($sql);
32 foreach ($data as $row)
33 $ret .= sprintf('<tr><td>%s</td><td align="right">%.2f %s</td></tr>',
34 $row['material'], $row['menge'], $row['einheit']);
41 'title' => 'Materialverbrauch zu Arbeitsberichten',
42 'join' => array('kostenstellen ON einsatz.kostenstelle = kostenstellen.id'),
46 'sql' => 'einsatz.id',
54 'kostenstelle' => array(
55 'name' => 'Kostenstelle',
57 'sql' => 'kostenstellen.kostenstelle',
62 'control' => "new Rico.TableColumn.checkbox('t','f','0',true)",
63 'sql' => '(SELECT count(*) > 0 FROM materialverbrauch WHERE einsatz = einsatz.id)',
64 'specs' => "ClassName: 'aligncenter', canSort: false",
68 'html' => '<table id="materialverbrauch_table" cellspacing="0" style="margin-top: -13px;" border="0" width="100%">'.
70 '<tr bgcolor="#ffd76d" style="color: #444;"><th>Material</th><th>Menge</th></tr>'.
72 '<tbody id="detail_materialverbrauch_tbody"></tbody>'.
75 'materialverbrauch_tbody' => array(
76 'fetch' => fetch_tbody,
80 'edit_title' => 'Materialverbrauch vermerken',
81 'edit_table' => 'materialverbrauch',
92 'options' => 'SELECT id,material AS text FROM materialien ORDER BY text',
93 'onchange' => 'select_material(this)',
100 'comment' => ' <span id="edit_einheit"></span>',
111 'sql' => 'SELECT einheiten.einheit FROM einheiten ' .
112 'JOIN materialien ON materialien.einheit = einheiten.id ' .
113 'WHERE materialien.id = {id}',