ilove Webpart Tabelle aktualisieren
-
2010년 9월 20일 월요일 오전 9:29
Hallo,
ich möchte mit dem iLove Webpart Informationen in einer Tabelle bereitstellen.
In einem Textfeld wir ein Stichtag eingegeben und mit dem Button "Abfrage senden" soll die Tabelle aktualisiert werden.
Es hängt soweit ich das einschätzen kann, an der Übergabe des Stichtags an die Funktion getanzahl() und am Button, der die Seite nach einem klick neu läd.
Ich hoffe ihr könnt mir weiterhelfen.
########### Initialize ############ [System.DateTime]$heute=Get-Date $Stichtag= $webpart.Parameter1 $Stichtag2= $webpart.Parameter2 $FTableBereiche= New-Object system.Data.DataTable #Enthält gefilterte Bereiche $sitesweb=Get-SPWeb -webUrl "http://xxx" $azubilist=$sitesweb.getlist("http://xxx") $berufelist=$sitesweb.getlist("http://xxx") $queryberufe= New-Object "Microsoft.Sharepoint.SPQuery" #Caml Querys laden $qamllist=$sitesweb.getlist("http://xxx") $querycaml= New-Object "Microsoft.Sharepoint.SPQuery" $querycaml.Query= "<Where><IsNotNull><FieldRef Name=""Title"" /></IsNotNull></Where>" $itemcoll= $qamllist.getitems($querycaml) $TCaml= New-Object system.Data.DataTable $TCaml= $itemcoll.GetDataTable() $VCaml = New-Object system.Data.DataView($TCaml) #Alle Querys nun in $VCaml function getquery($Qtitle) { $VCaml.RowFilter="Title='$Qtitle'" # $writer.write($VCaml[0][0]) return $VCaml[0][1] } function getanzahl([int]$lehrjahr,$geschlecht,$beruf) { $myq = New-Object "Microsoft.Sharepoint.SPQuery" $jahr=$heute.Year if($heute.Month -ge 8) { $jahr=$jahr-1 } [int]$jahra=$jahr - $lehrjahr [int]$jahre=$jahra +1 [string]$startdatum="$jahra$Stichtag"+"T00:00:00Z" [string]$enddatum="$jahre$Stichtag2"+"T00:00:00Z" $qt= getquery("counterquery") $qt=$qt.Replace("geschlechtersetzen",$geschlecht) $qt=$qt.Replace("berufersetzen",$beruf) $qt=$qt.Replace("startdatum",$startdatum) $qt=$qt.Replace("enddatum",$enddatum) $myq.Query = $qt $itemcolla=$azubilist.getitems($myq) return $itemcolla.Count } function Render($writer) { $tb = New-Object System.Web.UI.WebControls.TextBox $tb.ID="tb1" $writer.write("Stichtag: ") $tb.Text="01.09.2010" $tb.RenderControl($writer) $writer.write("<input type='reset' value='Anfrage senden' name='btnAnfragesenden' onclick>") # css $defaultCss =@" .ps td {font-size:10pt} "@ $css = Init-Parameter "Parameter8" $defaultCss -defaultOnEmpty Register-CSSBlock $css $qt=getquery "allebereiche" $queryberufe.Query=$qt $itemcoll= $berufelist.getitems($queryberufe) #Bereiche Filtern $DTable = New-Object system.Data.DataTable $DTable = $itemcoll.GetDataTable() $DView = New-Object system.Data.DataView($DTable) $FTableBereiche= $DView.ToTable($true,"Bereich") $writer.write("<table border=1><tr><td style='font-size:10pt;font-weight:bold'>Stand:$heute</td><td class='ps' colspan=2>1.</td><td colspan=2>2.</td><td colspan=2>3.</td><td colspan=2>4.</td><td colspan=2 >Gesamt</td></tr>") $writer.write("<tr><td></td><td >m.</td><td>w.</td><td >m.</td><td>w.</td><td >m.</td><td>w.</td><td >m.</td><td>w.</td><td >m.</td><td>w.</td></tr>") $ges1m=0 $ges1w=0 $ges2m=0 $ges2w=0 $ges3m=0 $ges3w=0 $ges4m=0 $ges4w=0 foreach ($row in $FTableBereiche.Rows) { $writer.write("<tr><td colspan=11>") $writer.write($row["Bereich"]+"<br>") $writer.write("</td></tr>") $b= $row["Bereich"] #Berufe durchlaufen $queryberufe =New-Object "Microsoft.SharePoint.SPQuery" $qt= getquery("berufegefiltert") $qt=$qt.Replace("ersetzen",$b) $queryberufe.Query = $qt $itemcoll=$berufelist.getitems($queryberufe) $bereichm1=0 $bereichw1=0 $bereichm2=0 $bereichw2=0 $bereichm3=0 $bereichw3=0 $bereichm4=0 $bereichw4=0 $bereichmg=0 $bereichwg=0 foreach ($item in $itemcoll) { $gesberufm=0 $gesberufw=0 $beruft=$item["Title"] #Männlich $writer.write("<tr><td>") $writer.write($beruft) $writer.write("</td>") $anz=getanzahl 1 "männlich" $beruft $writer.write("<td>$anz</td>") $gesberufm=$gesberufm+$anz $bereichm1=$bereichm1+$anz $ges1m=$ges1m+$anz $anz=getanzahl 1 "weiblich" $beruft $writer.write("<td>$anz</td>") $gesberufw=$gesberufw+$anz $bereichw1=$bereichw1+$anz $ges1w=$ges1w+$anz $anz=getanzahl 2 "männlich" $beruft $writer.write("<td>$anz</td>") $gesberufm=$gesberufm+$anz $bereichm2=$bereichm2+$anz $ges2m=$ges2m+$anz $anz=getanzahl 2 "weiblich" $beruft $writer.write("<td>$anz</td>") $gesberufw=$gesberufw+$anz $bereichw2=$bereichw2+$anz $ges2w=$ges2w+$anz $anz=getanzahl 3 "männlich" $beruft $writer.write("<td>$anz</td>") $gesberufm=$gesberufm+$anz $bereichm3=$bereichm3+$anz $ges3m=$ges3m+$anz $anz=getanzahl 3 "weiblich" $beruft $writer.write("<td>$anz</td>") $gesberufw=$gesberufw+$anz $bereichw3=$bereichw3+$anz $ges3w=$ges3w+$anz $anz=getanzahl 4 "männlich" $beruft $writer.write("<td>$anz</td>") $gesberufm=$gesberufm+$anz $bereichm4=$bereichm4+$anz $ges4m=$ges4m+$anz $anz=getanzahl 4 "weiblich" $beruft $writer.write("<td>$anz</td>") $gesberufw=$gesberufw+$anz $bereichw4=$bereichw4+$anz $ges4w=$ges4w+$anz $writer.write("<td>$gesberufm</td><td>$gesberufw</td></tr>") } #Beruf Ende $bereichmg=$bereichm1+$bereichm2+$bereichm3+$bereichm4 $bereichwg=$bereichw1+$bereichw2+$bereichw3+$bereichw4 $gesbereich=$bereichmg+$bereichwg $writer.write("<tr><td>Gesamt:</td><td>$bereichm1</td><td>$bereichw1</td><td>$bereichm2</td><td>$bereichw2</td ><td>$bereichm3</td><td>$bereichw3</td><td>$bereichm4</td><td>$bereichw4</td><td>$bereichmg</td><td>$bereichwg </td></tr>") $writer.write("<tr><td colspan=9></td><td colspan=2>$gesbereich</tr>") }#Bereich Ende $writer.write("<tr><td rowspan=2>Gesamt</td><td>$ges1m</td><td >$ges1w</td><td>$ges2m</td><td>$ges2w</td><td>$ges3m</td><td>$ges3w</td><td>$ges4m</td><td>$ges4w</td><td>" + ($ges1m+$ges2m+$ges3m+$ges4m) + "</td><td>" + ($ges1w+$ges2w+$ges3w+$ges4w) + "</td></tr>") $writer.write("<tr><td colspan=2>" + ($ges1m+$ges1w) + "</td><td colspan=2>" + ($ges2m+$ges2w) + "</td><td colspan=2>" + ($ges3m+$ges3w) + "</td><td colspan=2>" + ($ges4m+$ges4w) + "</td><td colspan=2>" + ($ges1m+$ges2m+$ges3m+$ges4m+$ges1w+$ges2w+$ges3w+$ges4w) + "</td></tr>") $writer.write("</table>") }

