NEUES MODUL :: Excel Viewer

wayfearer
Beiträge: 84
Registriert: Fr 13. Apr 2007, 17:37
Wohnort: Siegen
Kontaktdaten:

NEUES MODUL :: Excel Viewer

Beitrag von wayfearer » Do 27. Sep 2007, 12:45

Hi Leute,

hier noch mal ein neues Modul von mir.
Aktualisierte Version vom 29.09.2007
!!! WICHTIG !!! - Um es nutzern zu können müsst ihr folgende Datei runterladen http://marcelbensch.de/upload/downloads/excel.rar, entpacken und den ordner excel so wie er ist in den Mandanten/includes ordner verschieben.

So hier nun der Modul Quelltext:
Beschreibung:

Code: Alles auswählen

Ein Excel Viewer auf Basis der PHPExcelReader Klasse
Version 1.0

Dient dazu um Excel Dokumente direkt im Web anzeigen zu lassen ohne vorher alles selbst in HTML umbauen zu müssen.
Aussehen wird über Stylesheets angepasst.
Eingabe:

Code: Alles auswählen

?><?php
/***********************************************
* CONTENIDO MODUL - INPUT
*
* Modulname   :     Excel Viewer
* Author(s)   :     Marcel Bensch, (Original Module: Illustration by Andreas Lindner, 4fb
* Copyright   :     Marcel Bensch
* Created     :    15.08.2007
************************************************/

#Selected xls directory
$cms_dirname = "CMS_VALUE[1]"; //
#Selected xls
$cms_filename = "CMS_VALUE[2]";

if ($cms_dirname == '' || $cms_dirname == '0') {
	$cms_dirname = 'upload/';
}

#Get paths
$sql = "SELECT
	htmlpath, frontendpath
	FROM
	".$cfg["tab"]["clients"]." 
	WHERE
	idclient = ".$client." ";

$db->query($sql);

if ($db->next_record()) {
	$htmlpath = $db->f('htmlpath');
	$frontendpath = $db->f('frontendpath');
}

#Choose excel folder
echo '<table cellpadding="0" cellspacing="0" border="0">
	<tr><td class="text_medium" style="padding:5px">'.mi18n("Hier k&ouml;nnen Sie die gewünschte Excel-Datei zur Anzeige ausw&auml;hlen").'</td></tr>
	<tr><td class="text_medium" style="padding:5px">'.mi18n("Verzeichnis mit Datei ausw&auml;hlen").': </td></tr>
	<tr><td class="text_medium" style="padding:5px">';
echo '<select name="CMS_VAR[1]" style="width:200px">';

#Get upload directories
$sql = "SELECT DISTINCT
	dirname
	FROM
	".$cfg["tab"]["upl"]."
	WHERE
	idclient='$client' AND
	filetype IN ('xls')
	ORDER BY
	dirname";

$db->query($sql);

$selected = false;
while ($db->next_record()) {
	$dirname = $db->f('dirname');
	if ($cms_dirname != $dirname) {
		echo '<option value="'.$dirname.'">&nbsp;'.$dirname.'</option>';
	} else {
		$selected = true;
		echo '<option value="'.$dirname.'" selected="selected">&nbsp;'.$dirname.'</option>';
	}
}

if (!$selected) {
	echo '<option value="0" selected="selected">'.i18n("Bitte wählen").'</option>';
} else {
	echo '<option value="0">'.i18n("Bitte wählen").'</option>';
}

#Choose xls file
echo '</select>&nbsp;<input type="image" src="images/submit.gif">
	<tr><td class="text_medium" style="padding:5px">'.mi18n("Datei w&auml;hlen").': </td></tr>
	<tr><td class="text_medium" style="padding:5px">';
echo '<select name="CMS_VAR[2]" style="width:200px">';
echo '<option value="0" selected="selected">'.i18n("Bitte w&auml;hlen").'</option>';

if ($cms_dirname != '0') {
	#Get uploaded files
	$sql = "SELECT 
			filename
			FROM
			".$cfg["tab"]["upl"]."
			WHERE
			idclient = '$client' AND
			filetype IN ('xls') AND
			dirname = '$cms_dirname' 
			ORDER BY
			filename";

	$db->query($sql);

	while ($db->next_record()) {
		$img_name = $db->f('filename');
		if ($cms_filename != $img_name) {
			echo '<option value="'.$img_name.'">&nbsp;'.$img_name.'</option>';
		} else {
			echo '<option selected="selected" value="'.$img_name.'">&nbsp;'.$img_name.'</option>';
		}
	}
}

echo '</select>&nbsp;<input type="image" src="images/submit.gif">';

#Preview image
if ($cms_dirname != '0' AND $cms_filename != '0' AND strlen($cms_dirname) > 0 AND strlen($cms_filename) > 0) {
	$img_path = $htmlpath.$cfgClient[$client]['upload'].$cms_dirname.$cms_filename;
	$img_split = preg_split("/\./", $cms_filename);
	$count = count($img_split);
	$type = $img_split[$count -1];

	echo '<tr><td colspan="2" style="padding:5px">		
				'.$htmlpath.$cfgClient[$client]['upload'].$cms_dirname.$cms_filename.'
			</td></tr> ';
}

echo '</td></tr>';
echo '</table>';
?><?php 
Ausgabe:

Code: Alles auswählen

<?php
#Selected xls directory
$cms_dirname = "CMS_VALUE[1]";
#Selected xls
$cms_filename = "CMS_VALUE[2]";
$allow_url_override = 1; // Set to 0 to not allow changed VIA POST or GET
$file_to_include = $htmlpath.$cfgClient[$client]['upload'].$cms_dirname.$cms_filename;
if(!$allow_url_override || !isset($file_to_include))
{
	$file_to_include = "yourfile.xls";
}
if(!$allow_url_override || !isset($max_rows))
{
	$max_rows = 0; //USE 0 for no max
}
if(!$allow_url_override || !isset($max_cols))
{
	$max_cols = 5; //USE 0 for no max
}
if(!$allow_url_override || !isset($debug))
{
	$debug = 0;  //1 for on 0 for off
}
if(!$allow_url_override || !isset($force_nobr))
{
	$force_nobr = 1;  //Force the info in cells not to wrap unless stated explicitly (newline)
}

cInclude ("frontend", "includes/excel/reader.php");
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('UTF-8');
$data->setUTFEncoder('iconv');
$data->read($file_to_include);
error_reporting(E_ALL ^ E_NOTICE);

function make_alpha_from_numbers($number)
{
	$numeric = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	if($number<strlen($numeric))
	{
		return $numeric[$number];
	}
	else
	{
		$dev_by = floor($number/strlen($numeric));
		return "" . make_alpha_from_numbers($dev_by-1) . make_alpha_from_numbers($number-($dev_by*strlen($numeric)));
	}
}
echo "<script type='text/javascript' language='JavaScript'>
var sheet_HTML = Array();\n";
for($sheet=0;$sheet<count($data->sheets);$sheet++)
{
	$table_output[$sheet] .= "<table class='table_body'>";
	for($row=1;$row<=$data->sheets[$sheet]['numRows']&&($row<=1);$row++)
	{
		$table_output[$sheet] .= "<tr class='excel_headline'>";
		for($col=1;$col<=$data->sheets[$sheet]['numCols']&&($col<=$max_cols||$max_cols==0);$col++)
		{
			if($data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'] >=1 && $data->sheets[$sheet]['cellsInfo'][$row][$col]['rowspan'] >=1)
			{
				$this_cell_colspan = " colspan=" . $data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'];
				$this_cell_rowspan = " rowspan=" . $data->sheets[$sheet]['cellsInfo'][$row][$col]['rowspan'];
				for($i=1;$i<$data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'];$i++)
				{
					$data->sheets[$sheet]['cellsInfo'][$row][$col+$i]['dontprint']=1;
				}
				for($i=1;$i<$data->sheets[$sheet]['cellsInfo'][$row][$col]['rowspan'];$i++)
				{
					for($j=0;$j<$data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'];$j++)
					{
						$data->sheets[$sheet]['cellsInfo'][$row+$i][$col+$j]['dontprint']=1;
					}
				}
			}
			else if($data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'] >=1)
			{
				$this_cell_colspan = " colspan=" . $data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'];
				$this_cell_rowspan = "";
				for($i=1;$i<$data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'];$i++)
				{
					$data->sheets[$sheet]['cellsInfo'][$row][$col+$i]['dontprint']=1;
				}
			}
			else if($data->sheets[$sheet]['cellsInfo'][$row][$col]['rowspan'] >=1)
			{
				$this_cell_colspan = "";
				$this_cell_rowspan = " rowspan=" . $data->sheets[$sheet]['cellsInfo'][$row][$col]['rowspan'];
				for($i=1;$i<$data->sheets[$sheet]['cellsInfo'][$row][$col]['rowspan'];$i++)
				{
					$data->sheets[$sheet]['cellsInfo'][$row+$i][$col]['dontprint']=1;
				}
			}
			else
			{
				$this_cell_colspan = "";
				$this_cell_rowspan = "";
			}
			if(!($data->sheets[$sheet]['cellsInfo'][$row][$col]['dontprint']))
			{
				$table_output[$sheet] .= "<td class='table_data' $this_cell_colspan $this_cell_rowspan>&nbsp;";
				if($force_nobr)
				{
					$table_output[$sheet] .= "<nobr>";
				}
				$table_output[$sheet] .= nl2br(htmlentities($data->sheets[$sheet]['cells'][$row][$col]));
				if($force_nobr)
				{
					$table_output[$sheet] .= "</nobr>";
				}
				$table_output[$sheet] .= "</td>";
			}
		}
		$table_output[$sheet] .= "</tr>";
	}
	for($row=3;$row<=$data->sheets[$sheet]['numRows']&&($row<=$max_rows||$max_rows==0);$row++)
	{
	    if (is_int($row/2))
	    { $table_output[$sheet] .= "<tr class='bg_grey'>";}
	    else {$table_output[$sheet] .= "<tr >";}
	    
		for($col=1;$col<=$data->sheets[$sheet]['numCols']&&($col<=$max_cols||$max_cols==0);$col++)
		{
			if($data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'] >=1 && $data->sheets[$sheet]['cellsInfo'][$row][$col]['rowspan'] >=1)
			{
				$this_cell_colspan = " colspan=" . $data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'];
				$this_cell_rowspan = " rowspan=" . $data->sheets[$sheet]['cellsInfo'][$row][$col]['rowspan'];
				for($i=1;$i<$data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'];$i++)
				{
					$data->sheets[$sheet]['cellsInfo'][$row][$col+$i]['dontprint']=1;
				}
				for($i=1;$i<$data->sheets[$sheet]['cellsInfo'][$row][$col]['rowspan'];$i++)
				{
					for($j=0;$j<$data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'];$j++)
					{
						$data->sheets[$sheet]['cellsInfo'][$row+$i][$col+$j]['dontprint']=1;
					}
				}
			}
			else if($data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'] >=1)
			{
				$this_cell_colspan = " colspan=" . $data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'];
				$this_cell_rowspan = "";
				for($i=1;$i<$data->sheets[$sheet]['cellsInfo'][$row][$col]['colspan'];$i++)
				{
					$data->sheets[$sheet]['cellsInfo'][$row][$col+$i]['dontprint']=1;
				}
			}
			else if($data->sheets[$sheet]['cellsInfo'][$row][$col]['rowspan'] >=1)
			{
				$this_cell_colspan = "";
				$this_cell_rowspan = " rowspan=" . $data->sheets[$sheet]['cellsInfo'][$row][$col]['rowspan'];
				for($i=1;$i<$data->sheets[$sheet]['cellsInfo'][$row][$col]['rowspan'];$i++)
				{
					$data->sheets[$sheet]['cellsInfo'][$row+$i][$col]['dontprint']=1;
				}
			}
			else
			{
				$this_cell_colspan = "";
				$this_cell_rowspan = "";
			}
			if(!($data->sheets[$sheet]['cellsInfo'][$row][$col]['dontprint']))
			{
				$table_output[$sheet] .= "<td class='table_data' $this_cell_colspan $this_cell_rowspan>&nbsp;";
				if($force_nobr)
				{
					$table_output[$sheet] .= "<nobr>";
				}
				$table_output[$sheet] .= nl2br(htmlentities($data->sheets[$sheet]['cells'][$row][$col]));
				if($force_nobr)
				{
					$table_output[$sheet] .= "</nobr>";
				}
				$table_output[$sheet] .= "</td>";
			}
		}
		$table_output[$sheet] .= "</tr>";
	}
	$table_output[$sheet] .= "</table>";
	$table_output[$sheet] = str_replace("\n","",$table_output[$sheet]);
	$table_output[$sheet] = str_replace("\r","",$table_output[$sheet]);
	$table_output[$sheet] = str_replace("\t"," ",$table_output[$sheet]);
	if($debug)
	{
		$debug_output = print_r($data->sheets[$sheet],true);
		$debug_output = str_replace("\n","\\n",$debug_output);
		$debug_output = str_replace("\r","\\r",$debug_output);
		$table_output[$sheet] .= "<pre>$debug_output</pre>";
	}
	echo "sheet_HTML[$sheet] = \"$table_output[$sheet]\";\n";
}
echo "
function change_tabs(sheet)
{
	//alert('sheet_tab_' + sheet);
	for(i=0;i<" , count($data->sheets) , ";i++)
	{
		document.getElementById('sheet_tab_' + i).className = 'tab_base';
	}
	document.getElementById('table_loader_div').innerHTML=sheet_HTML[sheet];
	document.getElementById('sheet_tab_' + sheet).className = 'tab_loaded';

}
</script>";
echo "
<div id=\"table_complete\" align=\"center\">
<div id=\"tabellen_tabs\">
<table class='table_tabs' NAME='tab_table' align='left'>
<tr>";
for($sheet=0;$sheet<count($data->sheets);$sheet++)
{
	echo "<td class='tab_base' id='sheet_tab_$sheet' align='center'
		onmousedown=\"change_tabs($sheet);\">", $data->boundsheets[$sheet]['name'] , "</td>";
}

echo
"</tr>";
echo "</table></div>
<div id=table_loader_div></div>
<script type='text/javascript' language='JavaScript'>
change_tabs(0);
</script></div><div style=\"clear:both;\" ></div><p>&nbsp;</p>";
?>
Für das aussehen sind Stylesheets verantwortlich hier mal ein Beispiel:
Ein Beispiel Stylesheet:

Code: Alles auswählen

#table_loader_div{
    float:left;
    margin-left:50px;
}

.table_data{
	/*border-bottom-style:solid;
	border-bottom-width:0.5px;*/
}

.excel_headline {
    background-color:#EA8B2E;
    font-weight:bold;
    border-left:1px solid #000000;
    border-right: 1px solid #000000;
    border-bottom:1px solid #000000;
    border-top:0px;
}

.bg_grey {
    background-color:#ebecee;
}

.tab_base{
	background:#F4F4F4;
	font-weight:bold;
    color:#ea8b2e;
	cursor:pointer;
    border-left:1px;
    border-right:1px;
    border-top:1px;
    border-bottom:0px;
    border-style:solid;
    border-color:#000000;
    padding:0px 3px 0px 3px;
}

.table_sub_heading{
	background:#CCCCCC;
	font-weight:bold;
	border-style:solid;
	border-width:1;
}

.table_body{
	font-weight:normal;
	font-size:9pt;
	font-family:sans-serif;
    border-collapse:collapse;
    border-left:1px solid #000000;
    border-right:1px solid #000000;
    border-top:0px;
    border-bottom:1px solid #000000;
}

#tabellen_tabs{
    float:left;
    min-width:400px;
    margin-left:50px;
}

.table_tabs {
    font-weight:normal;
	font-size:9pt;
	font-family:sans-serif;
	border-color:#000000;
    border-collapse:collapse;
    border-left:1px;
    border-right:1px;
    border-top:1px;
    border-bottom:0px;
    border-style:solid;
    text-align:left;
    cursor:pointer;
}

.tab_base:hover{
    background:#EA8B2E;
	color:#ffffff;
	font-weight:bold;
	border-color:#000000;
    border-left:1px;
    border-right:1px;
    border-top:1px;
    border-bottom:0px;
    border-style:solid;
    cursor:pointer;
    padding:0px 3px 0px 3px;
}

.tab_loaded{
	background:#EA8B2E;
	color:#000000;
	font-weight:bold;
	border-color:#000000;
    border-left:1px;
    border-right:1px;
    border-top:1px;
    border-bottom:0px;
    border-style:solid;
    cursor:pointer;
    padding:0px 3px 0px 3px;
}

.table_body td {
  padding:3px 10px 3px 10px;
}

#table_complete{
    min-width:500px;
    *width:500px;
}
Über Lob, Kritik und konstruktive Kommentare freue ich mich natürlich immer !

Viel Spaß damit,

Wayfearer
Zuletzt geändert von wayfearer am Sa 29. Sep 2007, 23:26, insgesamt 5-mal geändert.

holger.librenz_4fb

Re: NEUES MODUL :: Excel Viewer

Beitrag von holger.librenz_4fb » Do 27. Sep 2007, 12:58

Hi.

Nur ne kleine Anmerkung...
wayfearer hat geschrieben:

Code: Alles auswählen

?><?php
/***********************************************
* CONTENIDO MODUL - INPUT
*
* Modulname   :     Illustration
* Author(s)   :     Andreas Lindner, 4fb
* Copyright   :     Contenido - four for business, Andreas Lindner
* Created     :     12.08.2005
************************************************/
Ich gehe davon aus, das Du noch mal genauer schauen solltest. Andreas hat wohl nix mit Deinem Modul zu tun, auch das Modul heißt anders ;)
Diese Angaben sind dafür da, das nachvollziehbar ist von wem was wie gemacht wurde.

Sonst werd ich mir das Modul gern mal anschauen.

Gruß, Holger

wayfearer
Beiträge: 84
Registriert: Fr 13. Apr 2007, 17:37
Wohnort: Siegen
Kontaktdaten:

Beitrag von wayfearer » Do 27. Sep 2007, 14:31

Habe ich drin gelassen aus copyright gründen, den input habe ich eben nur umgeschrieben und net selbst geschrieben komplett, wie man so schön sagt "Warum das Rad neu erfinden ?". Aber ich habe es jetzt abgeändert.

Mfg,

wayfearer

holger.librenz_4fb

Beitrag von holger.librenz_4fb » Do 27. Sep 2007, 14:50

Ist auch kein großes Ding. War auch auf keinen Fall böse gemeint!
In solchen Fällen sollte aber trotzdem das eigene Modul, der eigene Name, das aktuelle Datum im Header stehen und der Verweis darauf, das es basierend auf einem bestehenden Modul entwickelt wurde. So wie Du es jetzt auch gemacht hast.

Das hat den Hintergrund, das nun jeder weiß das DU dieses Input Modul für Dein Modul nutzt. Ansonsten würden eben alle Anfragen, die es ggf. zu dem Modul gibt sehr schnell bei Andreas landen...

Also, sorry wenn es zu böse klang. Wollte nur darauf hinweisen.

Gruß, Holger

wayfearer
Beiträge: 84
Registriert: Fr 13. Apr 2007, 17:37
Wohnort: Siegen
Kontaktdaten:

Beitrag von wayfearer » Fr 28. Sep 2007, 11:26

Ne is schon okay kein ding !

wosch

Beitrag von wosch » Fr 28. Sep 2007, 11:39

@wayfearer,
weißt du auswendig ob das mit allen Version von Excel bzw. deren Dateien .xls klappt?
Oder erst ab einer bestimmten Version?

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Fr 28. Sep 2007, 12:22

excel so wie er ist in den includes ordner
Wäre schön, wenn Du das so ändern könntest, dass das Mandanten/includes-Verzeichnis verwendet wird.

Einbindung dann z.B. mit
cInclude("frontend", "includes/excel/reader.php");

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

wayfearer
Beiträge: 84
Registriert: Fr 13. Apr 2007, 17:37
Wohnort: Siegen
Kontaktdaten:

Beitrag von wayfearer » Sa 29. Sep 2007, 23:16

wosch hat geschrieben:@wayfearer,
weißt du auswendig ob das mit allen Version von Excel bzw. deren Dateien .xls klappt?
Oder erst ab einer bestimmten Version?
Also ich konnte es ohne probleme mit Exel97, 2000, 2003 Dateien nutzen.
Wenn man Excel 2007 verwendet muss man im Kompatibilitätsmodus zu 2003 speichern so dass die Endung *.xls ist, da die Klasse das neue erweiterte Excel Format nicht richtig interpretiert. Ansosten weiß ich nichts genaueres, müsste geteste werden.

wayfearer
Beiträge: 84
Registriert: Fr 13. Apr 2007, 17:37
Wohnort: Siegen
Kontaktdaten:

Beitrag von wayfearer » Sa 29. Sep 2007, 23:27

HerrB hat geschrieben:
excel so wie er ist in den includes ordner
Wäre schön, wenn Du das so ändern könntest, dass das Mandanten/includes-Verzeichnis verwendet wird.

Einbindung dann z.B. mit
cInclude("frontend", "includes/excel/reader.php");

Gruß
HerrB
Ist erledigt ! Habe den Quelltext oben aktualisiert, danke für den Hinweis !

Grüße an die Füße,

Marcel

barneyy
Beiträge: 16
Registriert: Di 29. Mai 2007, 15:17
Wohnort: NRW
Kontaktdaten:

Sehr schön - Danke dafür

Beitrag von barneyy » Fr 19. Okt 2007, 08:31

Hi wayfearer, setzte gerade ehrenamtlich eine Vereins-Webseite auf. Dabei zeigte sich das Problem, dass ich 560 Zeile Excel einlesen musste - und nicht wusste wie ichs machen sollte. Hinzu kommt - ich bin absoluter PHP-Newbie.

Das Modul funzt auf Anhieb und ich wollte an dieser Stelle mal schnell DANKE sagen für das Modul. Einfache Handhabung, selbst wenn man neu bei Contenido ist.

Beste Grüße

barneyy
Beiträge: 16
Registriert: Di 29. Mai 2007, 15:17
Wohnort: NRW
Kontaktdaten:

Auch Daten für die Suchfunktion

Beitrag von barneyy » Mo 22. Okt 2007, 10:50

Eine Sache ist mir beim Excel-Viewer noch aufgefallen. Die Daten der Excel-Files werden nicht vom Beispielmodul "Suche" erfasst. Kann man das noch irgendwie bewerkstelligen???

Contenido-Vers. 4.6.15.
Modul Sucheingabe und Suchausgabe
Beispielmodule des Beispielmandanten
PHP 5

Über kurze Hilfe wäre ich dankbar.

wayfearer
Beiträge: 84
Registriert: Fr 13. Apr 2007, 17:37
Wohnort: Siegen
Kontaktdaten:

Re: Auch Daten für die Suchfunktion

Beitrag von wayfearer » Di 23. Okt 2007, 09:04

barneyy hat geschrieben:Eine Sache ist mir beim Excel-Viewer noch aufgefallen. Die Daten der Excel-Files werden nicht vom Beispielmodul "Suche" erfasst. Kann man das noch irgendwie bewerkstelligen???

Contenido-Vers. 4.6.15.
Modul Sucheingabe und Suchausgabe
Beispielmodule des Beispielmandanten
PHP 5

Über kurze Hilfe wäre ich dankbar.
Das kann daran liegen, dass die Sachen die das Modul macht ja erst zur Laufzeit geparsed werden, also nicht in der Datenbank liegen, daher auch nicht durch die Suche zu erfassen sind . Die Problematik lässt sich auch nicht so einfach umgehen wenn man direkt mit den Excel Dateien arbeiten will.

Mfg,

Way

barneyy
Beiträge: 16
Registriert: Di 29. Mai 2007, 15:17
Wohnort: NRW
Kontaktdaten:

Stimmt, Klingt logisch!

Beitrag von barneyy » Do 25. Okt 2007, 08:55

Hi Way,

das mit dem parsen habe ich natürlich nicht wirklich bedacht - erscheint aber logisch. Sorry wegen der dämlichen Frage, hätte ich selbst drauf kommen können.

Trotzdem super-Modul - auch weil's direkt funktioniert hat bei mir.
Thx :wink:

wayfearer
Beiträge: 84
Registriert: Fr 13. Apr 2007, 17:37
Wohnort: Siegen
Kontaktdaten:

Re: Stimmt, Klingt logisch!

Beitrag von wayfearer » Do 25. Okt 2007, 09:10

barneyy hat geschrieben:Sorry wegen der dämlichen Frage, hätte ich selbst drauf kommen können.
Merke dir: " Es gibt keine dämlichen Fragen, nur dämliche Antworten !"

Und danke für das Lob ;-)

Mfg,

Way
Zitat des Tages:
Web 2.0 ist ... wenn selbst die Antiterror-Datei XML kompatibel ist !

_________________

Was kam zuerst: Das Huhn oder das Ei ?

Das Antwortet der OOP-Entwickler:
Das Ei ist das Objekt, welches aus der Klasse Huhn abgeleitet wird. Die Klasse Huhn erweitert die Klasse Hühnerstall.

Das Antwortet der Christ:
Und Gott schuf Himmel und Erde, die Pflanzen, die Tiere, die Menschen ... und keine Eier!-)

funomat
Beiträge: 345
Registriert: Do 26. Feb 2004, 22:13
Wohnort: Neuss
Kontaktdaten:

Re: NEUES MODUL :: Excel Viewer

Beitrag von funomat » Do 25. Okt 2007, 12:44

Hi Way,

hast Du evtl. das Download-Verzeichnis geändert? Kann die Datei nicht runter laden!

Gruß,
funomat
tiago.de | adk-msi.de | iseringhausen.de | the-iseringhausen.de
Manchmal glaube ich, der beste Beweis dafür, dass es anderswo im Weltall intelligentes Leben gibt, ist der, dass noch niemand versucht hat, Kontakt zu uns aufzunehmen. (Calvin & Hobbes)

Gesperrt