…meie igapäevast IT’d anna meile igapäev…

2007-09-24

Appi!!! Kuidas (MITTE) saata SharePointist e-maili

Filed under: Kogutud teotused,Sharepoint — Sander @ 08:00:05

Oli katseajal SharePoindi programmeerija. Tegi meilisaatmise SharePoindis ühe listi pealt, kuidagi töötas ka. Aga nüüd hakkas kliendi juures vigu andma – ning mina pidin koodi sisse vaatama – kuna algse progejaga katseaja lõpus enam töösuhet jätkata ei soovitud.

Mõned “lõbusamad” näited

Kuidas mittevajalikke välju (muutuja “oluline”) välja sõeluda:

   1:                string oluline;
   2:
   3:                for (int f = 0; f < olulised.Length; f++)
   4:                {
   5:
   6:                    oluline = olulised[f];
   7:
   8:                    #region Mitteolulised väljad jäävad vahele
   9:                    if (
  10:
  11:                oluline == "Content Type ID" ||
  12:                oluline == "Approver Comments" ||
  13:                oluline == "File Type" ||
  14:                oluline == "Content Type" ||
  15:                oluline == "ID" ||
  16:                oluline == "Modified" ||
  17:                oluline == "Created" ||
  18:                oluline == "Created By" ||
  19:                oluline == "Modified By" ||
  20:                oluline == "Has Copy Destinations" ||
  21:                oluline == "Copy Source" ||
  22:                oluline == "owshiddenversion" ||
  23:                oluline == "Workflow Version" ||
  24:                oluline == "UI Version" ||
  25:                oluline == "Version" ||
  26:                oluline == "Attachments" ||
  27:                oluline == "Approval Status" ||
  28:                oluline == "Edit" ||
  29:                oluline == "Select" ||
  30:                oluline == "Instance ID" ||
  31:                oluline == "Order" ||
  32:                oluline == "GUID" ||
  33:                oluline == "Workflow Instance ID" ||
  34:                oluline == "URL Path" ||
  35:                oluline == "Path" ||
  36:                oluline == "Item Type" ||
  37:                oluline == "Effective Permissions Mask" ||
  38:                oluline == "Unique Id" ||
  39:                oluline == "ProgId" ||
  40:                oluline == "ScopeId" ||
  41:                oluline == "HTML File Type" ||
  42:                oluline == "Edit Menu Table Start" ||
  43:                oluline == "Edit Menu Table End" ||
  44:                oluline == "Name" ||
  45:                oluline == "Type" ||
  46:                oluline == "Server Relative URL" ||
  47:                oluline == "Encoded Absolute URL" ||
  48:                oluline == "File Name" ||
  49:                oluline == "Property Bag" ||
  50:                oluline == "Level" ||
  51:                oluline == "Is Current Version"
  52:
  53:                ) continue;
  54:                    #endregion

Tore, et ikka ArrayList.IndexOf või foreach nii ilusti on selgeks õpitud…

Ning kuidas siis meil ikkagi saata? Lahendus on lihtne:

   1: #region mailto link
   2: writer.Write("<iframe src=\"");
   3: writer.Write("mailto:?body=" + body + "\"");
   4: writer.Write("></iframe>");
   5: #endregion

Avame iframe’s mailto: lingi. Hurraa! Aga oot… see ei sobi, lähme igaks juhuks tagasi JavaScripti abil:

   1: writer.Write("<script>setTimeout(history.back(),1000);</script>");

Oh, kurat. Miks mina sellise pasaga tegelema pean?

3 kommentaari »

  1. DailyWTF rubriik :D

    Samas SharePoint ise kuulub ka otsapidi sinna rubriiki vist. Kiskusin ühe neist 40-st MS-i aplikatsioonist lahti ja uurisin aplikatsiooni ülesehitust. Rocks hard. XML-i vahel on omakorda mingi encode’idud XML ja vahele ka sorts HTML-i. Nagu keskmine PHP meeste CMS, et kõik sada erinevat süsteemi teemat on samasse patta kokku pistetud. Peabki seal see asi nii olema või?

    kommentaar kirjutas Gunnar — 2007-09-24 @ 08:56:51 | Vasta

  2. Olen ise SharePoint’is üsna algaja – nii ~2 nädalat sellest, kui esimene kord seda uurima pidin. Aga üsna selline ta on küll nagu sa kirjeldasid – hunnik erinevaid asju erinevates kohtades, kõik praktiliselt dokumenteerimata.

    Räägitakse, et SharePoint 2003 olevat veel hullem olnud, ei tea öelda. Eks Microsoftil kipubki minema esimene (ja teine. Sageli ka kolmas) vasikas aia taade. SharePoint 2009 olevat juba majasiseses testimises mingi kuuluka järgi, ehk see on inimlikum.

    Idee on SP’l iseenesest hea, aga teostus on nagu mingil algajate kambal.

    kommentaar kirjutas dukelupus — 2007-09-24 @ 10:15:12 | Vasta

  3. Millegi pärast mulle tundus, et neil markup-i sisaldavatel failidel oli päris karmilt FrontPage-i maitse juures. Visual Studio suudab markup-i normaalselt stepida, aga seal oli ka vana hea FrontPage-i käekirja nagu näha. Kõige jamam asi, mis saab juhtuda, on see, et ametlikeks arendusvahenditeks jäävad mingid imelised käkid ja kogu SP krempli lives haldamine on asi, mis paari tunniga probleemide korral hallid juuksed pähe kasvatab.

    kommentaar kirjutas Gunnar — 2007-09-24 @ 18:42:52 | Vasta


RSS feed for comments on this post. TrackBack URI

Lisa kommentaar

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Muuda )

Twitter picture

You are commenting using your Twitter account. Log Out / Muuda )

Facebook photo

You are commenting using your Facebook account. Log Out / Muuda )

Google+ photo

You are commenting using your Google+ account. Log Out / Muuda )

Connecting to %s

Create a free website or blog at WordPress.com.