Kategoriaj Arkivoj: BDC

Rapida Konsileto: BDCa ADF Versiaj Nombroj Estas Via Amiko

Se vi estas mano-kodanta ADFajn dosierojn kaj faranta multajn kodajn/importaĵajn/testajn ciklojn, Uzi la versian nombron fari vian vivon pli facila.

Mi malamas agnoski ĝin, Sed ĝis ĉi tiu semajno, Mi estis ĉiam foriganta la ADF kaj re-importanta ĝin. Tio ĉi rompus miajn komercajn datumajn kolumnojn kaj fari min re-kabligi ilin. Ĉiuj nenecesa.

Registri tion ĉi nesufiĉe "ĝi estas evidenta unufoje vi vidas ĝin".

Ekzemplo:

<LobSystem
Xmlns:Xsi="Http://Www.w3.org/2001/xmlschema-okazo" Xsi:SchemaLocation="Http://Schemas.Microsoft.Com/oficejo/2006/03/BusinessDataCatalog BDCMetadata.Xsd" Tipo="WebService" Versio="1.2.0.0" Nomo="XyzzyDocumentReview" Xmlns="Http://Schemas.Microsoft.Com/oficejo/2006/03/BusinessDataCatalog">

Ŝanĝi tiun version kaj re-importaĵo kaj la ekzistanta komerca datumo kolumno uzas la ĝisdatigitan version aŭtomate kun neniu suplementa konfiguracio postulita.

</Fino>

Aboni al mia blogo.

Technorati Etikedoj:

Solvo: BDCa Plukisto Montras Nur Unu Kolumnon De Rezultoj

En mia sur-iranta provojn ĉe provizanta Pli utila lookup kolumno uzanta BDC, Mi frapis muron kun la BDCa plukisto. Se vi ne vidis ĝin, La BDCa plukisto estas simila al homa plukisto esceptas ke ĝi laboras kun kolumnoj de tipo "komerca datumo".

Vi aliras la plukiston de klakanta sur la malferma libra ikono de komerca datuma kolumno kiel montrita:

Bildo

La supra bildo montras komercan datuman kolumnon vokis "Mastran Dokumentan Identigaĵon". KE kolumno estas konektita, Tra BDC, Al araneaĵa servo. La araneaĵaj servaj revenoj du kolumnoj de informo: dokumenta IDENTIGAĴO kaj Titolo. La komerca celo ĉi tie estas provizi "ĉi tiun dokumenton estas bazita sur" Funkcio. Uzantoj elektas "mastron" Dokumento kaj kiam ili savas, Eventa ricevilo kopias meta datumaj kampoj de la referencita mastron.

De nerepago, La BDCa plukisto similas tion ĉi kiam mi serĉas dokumenti kies IDENTIGAĴO = "38":

klipo_bildo002

Tio estas helpema, Sed ne bona sufiĉa. Homoj ne pensas en terminoj de Identigaĵoj, Ili pensas en terminoj de titoloj kaj/aŭ alia meta datumo. La plukisto permesas vin serĉi sur aliaj kolumnoj (Ekz. Titolo) Sed ne montros la realan liston de titoloj ĝi trovis, Nur ilia DocId-a kiel montrita ĉi tie:

klipo_bildo002[1]

(La ekrana pafo ne estas tiel granda ĉar mi ne elektis serĉon kiu revenas ajnajn validajn rezultojn, Sed vi povas vidi ke se ĝi trovis kelkajn rezultojn, Ĝi nur havus montrita DocId-a, Ne titoloj).

Mi serĉis altan kaj malaltan por la respondo al tio ĉi kaj malsukcesita. Mia kolego, La malnova Jonathan Bradshaw, Alfrontis kaj solvis ĉi tiun aferon. Kiam mi elatingis al li por helpo, Li indikis min en la ĝusta direkto.

Formi la plukiston montri multoblajn kolumnojn tra la "ShowInPicker" Nemoveblaĵo en la ADF:

<Nemoveblaĵo Nomo="ShowInPicker" Tipo="Sistemo.Boolea">Vera</Nemoveblaĵo>

En pli da detalo:

  <!-- Titolo -->
  <TypeDescriptor TypeName="Sistemo.Ŝnuro" Nomo="Titolo" >
    <LocalizedDisplayNames>
      <LocalizedDisplayName LCID="1033">Titolo</LocalizedDisplayName>
    </LocalizedDisplayNames>
    <Nemoveblaĵoj>
      <Nemoveblaĵo Nomo="DisplayByDefault" Tipo="Sistemo.Boolea">Vera</Nemoveblaĵo>
      <Nemoveblaĵo Nomo="ShowInPicker" Tipo="Sistemo.Boolea">Vera</Nemoveblaĵo>
    </Nemoveblaĵoj>
  </TypeDescriptor>

Fiksanta ĉi tiun nemoveblaĵon faras enkonduki negravan problemon. Tuj kiam vi fiksis ĝin unufoje, Vi devas fiksi ĝin por ĉiu kolumno vi deziras montri. En mia kazo, BDCa plukisto montris DocId de nerepago. Tamen, Unufoje mi aldonis "ShowInPicker" Titoli, DocId ne pli longa montrita. Mi solvis ke de eksplicite fiksanta la ShowInPicker nemoveblaĵo por Doc IDENTIGAĴO.

Ĉi tie estas la rezulto:

Bildo

(Mi klarigos la strangan-rigardanta "168 – CamlSchema.Xsd" Konstruo en estonta bloga poŝto. En mallonga, Ĝi estas concatenated ŝnuro kiu permesas por iomete pli bona uzanta sperto).

Nature, Skribis ĉi tiun blogan eniron, Mi nur faris serĉi "ShowInPicker" Kaj trovita multenombrajn frapojn, Inkluzivanta ĉi tiu unu: http://msdn2.microsoft.com/en-us/library/ms583986.aspx. Ĝi klarigas la signifon de tiu nemoveblaĵo kune kun kelkaj alia bona BDCa aĵo.

</Fino>

Aboni al mia blogo!

Technorati Etikedoj:

Solvo al BDCa ADF Importaĵa Malsukceso: “La sekvanta eraro okazis:”

Mi estis ankoraŭ foje formanta BDCan ADF registras mane (Por ke mi povas konstrui supre mia "Akiri de mia gazono!" Cred) Kaj frapi ĉi tiun belegan eraron:

Bildo

"Aplika difino importaĵo malsukcesita. La sekvanta eraro okazis:"

Kiel vi povas vidi, Tie estas eraro, Sed … Ĝi ne estas iranta diri min kio ĝi estas.

En mia kazo, La afero rezultis ke mi komencis de kun praktika ADF por malsama projekto kiu konektis al datumaro kaj efektivigis SQLan demandon kontraŭ vido. En ĉi tiu nova projekto, Mi estas vokanta metodon sur araneaĵa servo. Mi malkovris ekstere la DB specifa aĵo kaj aldonita mian araneaĵan servan aĵon, Sed malsukcesita #?isdatigi la <LobSystem>-a Tipa eco. Mi ŝaltis ĝin al "WebService" Kaj mi #feli?e movis sur al pli nova kaj pli ekscitaj #importa?o eraroj, Kiu estis pritraktita en #?uldata kurso.

#?I tie estas la #mal?usta LobSystem:

<LobSystem
Xmlns:Xsi=Http://Www.w3.org/2001/xmlschema-okazo
Xsi:SchemaLocation=Http://Schemas.Microsoft.Com/oficejo/2006/03/BusinessDataCatalogBDCMetadata.Xsd
Tipa="Datumaro"
Versio="1.0.0.0" Nomi="xyzzy"
Xmlns="
Http://Schemas.Microsoft.Com/oficejo/2006/03/BusinessDataCatalog">

Tio ĉi estas ĝusta:

<LobSystem
Xmlns:Xsi=Http://Www.w3.org/2001/xmlschema-okazo
Xsi:SchemaLocation=Http://Schemas.Microsoft.Com/oficejo/2006/03/BusinessDataCatalogBDCMetadata.Xsd
Tajpi="WebService"
Versio="1.0.0.0" Nomi="xyzzy"
Xmlns="
Http://Schemas.Microsoft.Com/oficejo/2006/03/BusinessDataCatalog">

</Fino>

Technorati Etikedoj:

BDC Ŝajnas Realigebla Anstataŭaĵo Por Lookups

ĜISDATIGO: Ĉi tiu MSDNa afiŝo havas kelkajn interesajn rimarkojn de JXJ bazita sur lia, Plejparte negativa, Spertas iranta malsupren ĉi tiun vojon: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2623565&SiteID=1

Ni havas komercan scenaron kie ni devas ligi du dokumentajn bibliotekojn tra ofta "dokumenta IDENTIGAĴO" Kampo.

Ni ofte uzas lookup kolumno al efektivigas ligojn tiel. Estas pluraj malavantaĝoj al lookup kolumnoj, Tri el kiu estas:

  1. Nur unu kolumno de la lookup lookup biblioteko povas esti ligita.
  2. Elfaro: La fonta biblioteko povus enhavi centojn de eniroj. Tio estas tro da eniroj en la lookup.
  3. Serĉo: Estas ne integra serĉo. Mi ne signifas en la MUSKA sento de serĉo, Sed tie estas neniu vojo serĉi / Filtrilo sur multoblaj kolumnoj de la fonta dokumenta biblioteko kaj troviĝi la ligon vi deziras.

Subtenita de BDC, Ni povas uzi "komercan datumon" kolumna tipo kaj ĝi provizas superan serĉon kaj eĉ permesas multoblajn kolumnojn de datumo aperi en listaj vidoj.

Mi havis iun preparan sukceson kun ĉi tiu alproksimiĝo kaj plano skribi pli da pri ĝi.

Se vi laboris ĉi tiun angulon antaŭ ol kaj havas ajnajn rimarkojn, Plaĉi interŝanĝadon!

</Fino>

Technorati Etikedoj:

Solvo al BDCa Importaĵo Eraro: “Ne povus ŝarĝi Tipon priskribita de TypeName de TypeDescriptor …”

Mi estis laboranta kun BDC hodiaŭ, Kodanta ADF registras mane kaj produktanta min mem kelkaj eraroj. Unu tia eraro:

Aplika difino importaĵo malsukcesita. La sekvanta eraro okazis: Ne povus ŝarĝi Tipon priskribita de TypeName de TypeDescriptor. Parametra nomo: TypeName Eraro estis renkontita ĉe aŭ tuj antaŭ Linio: '35’ Kaj Pozicio: '20'.

MUSKO montris #?i tiu eraron kiam mi provis importi la ADFan XMLan dosieron.

Mi esploris la Interretojn kaj trovita ke mi estis referencanta la LOBan okazan nomon (De la <LobSystemInstance>) En mia <TypeDescriptor> Nodo kiam mi devus referenci la LOB nomas ?in mem (De <LobSystem>).

Malĝuste:

<TypeDescriptor TypeName="Conchango.KeyValue, LOBa Okazo Nomo" Nomi="KeyValue">

#?Usta:

<TypeDescriptor TypeName="Conchango.KeyValue, LOBa Nomo" Nomi="KeyValue">

Hope #tio ?i unu savas iun horo #a? du el tempo.

</Fino>

Aboni al mia blogo!

Technorati Etikedoj:

BDC runtime eraro klarigis

Mi kaŭzis BDCan eraron ĉi tiu semajno kiu montris ĝin mem sur la uzanta fasado kaj en la 12 Hive ŝtipo Ĉe runtime.

Unue, Tio ĉi aperita en la uzanta fasado:

Ne povus trovi kampojn inserti ĉiuj la Identigilaj Valoroj ĝuste efektivigi SpecificFinder MethodInstance kun Nomo … Certigi enigajn Parametrojn havi TypeDescriptors asociita kun ĉiu Identigilo difinita por ĉi tiu Ento.

Ĉi tie-a ekrano pafis:

klipo_bildo001

Mi ankaŭ povus kaŭzi ĉi tiun mesaĝon aperi en la 12 Hive ŝtipo ĉe volo (Uzanta mia patentita altan-tech-faras ne-provo-tio ĉi-ĉe-hejmo "Misteraj eraroj" Metodo):

11/14/2007 09:24:41.27 W3wp.Exe (0X080C) 0X0B8C SharePoint Portala Servilo Komerca Datumo 6q4x Alta Escepto en BusinessDataWebPart.OnPreRender: Sistemo.InvalidOperationException: La Identigila valoro ”, De Tipo ”, Estas nula. Atendata Identigila valoro de Tipa ‘Sistemo.Ŝnuro'. Ĉe Microsoft.Oficejo.Servilo.ApplicationRegistry.MetadataModel.Ento.FindSpecific(Objekto[] SubIdentifierValues, LobSystemInstance lobSystemInstance) Ĉe Microsoft.SharePoint.Portalo.WebControls.BdcClientUtil.FindEntity(Enta ento, Objekto[] UserValues, LobSystemInstance lobSystemInstance) Ĉe Microsoft.SharePoint.Portalo.WebControls.BusinessDataItemBuilder.GetEntityInstance(Vidi desiredView) Ĉe Microsoft.SharePoint.Portalo.WebControls.BusinessDataDetailsWebPart.GetEntityInstance() Ĉe Microsoft.SharePoint.Portalo.WebControls.BusinessDataDetailsWebPart.SetDataSourceProperties()

Mi serĉis proksimume kaj trovita kelkajn kondukojn en la MSDNa forumo, Sed ili ne estis sufiĉe por mi kompreni kion mi estis faranta malĝuste. Mi rigardis webcast de Ted Pattison KE mia Firmao Havas squirreled for sur servilo kaj venis konscii mian problemon.

En mia ADF, Mi estas konektanta al SQLa datumaro kiel montrita:

            <Nemoveblaĵo Nomo="RdbCommandText" Tipo="Sistemo.Ŝnuro">
              <![CDATA[
                ELEKTITA
                      SETID, PORTANTA_IDENTIGAĴO, EFFDT, DESCR, EFFa_STATUSO, IMPOSTPAGANTA_#IDENTIGA?O, RETA_#IDENTIGA?O, FRT_#ANTA?A_FLG, ALT_NAME1, ALT_NAME2, LINGVA_KD,
                      LANDO, ADDRESS1, ADDRESS2, ADDRESS3, ADDRESS4, URBO, NUM1, NUM2, DOMA_TIPO, ADDR_FIELD1, ADDR_FIELD2, ADDR_FIELD3,
                      GUBERNIO, STATO, #PO?TA, GEOa_KODO, JE_URBA_LIMO, LANDA_KODO, TELEFONO, ETENDAĴO, TELEFAKSILO, LASTA_EXPa_CHK_DTTM, FRAJTA_VENDISTO,
                      INTERLINK_DLL, TMS_EKSKLUDAS_FLG
                DE
                      dbo.PSa_PORTANTO_IDENTIGAĴA_VW WITH (Nolock)
                KIE
                  (SETID <> 'INTERŜANĜADO') Kaj
                  (Pli malalta(PORTANTA_IDENTIGAĴO) >= Pli malalta(@MinId)) Kaj
                  (Pli malalta(PORTANTA_IDENTIGAĴO) <= Pli malalta(@MaxId)) Kaj
                  (Pli malalta(DESCR) ŜATI pli malaltan(@InputDescr))
                ]]>
            </Nemoveblaĵo>

Mi estis provizita ke SQL de DBAa persono kaj mi estas donita kompreni ke ĝi estas Speciala Vido ili kreis nur por mi. La unika ŝlosilo estas PORTANTA_IDENTIGAĴO.

Ĉi tie estas la cimo mi enkondukis:

      <Identigiloj>
        <Identigilo Nomo="PORTANTA_IDENTIGAĴO" TypeName="Sistemo.Ŝnuro" />
        <Identigilo Nomo="DESCR" TypeName="Sistemo.Ŝnuro" /> 
</Identigiloj>

Ie laŭ la ekzemplo, Mi administris konfuzi min mem super la signifo de <Identigiloj> Kaj plia DESCR eĉ kvankam ĝi ne estas efektive identigilo. Mi prenis DESCR ekstere de la identigiloj fiksita kaj presto! Ĝi ĉiuj laboris.

Mi esperas, ke ĉi tio ŝparas al iu iun malĝojon 🙂

Technorati Etikedoj: , , ,

BDCa ADF kaj via amiko, CDATA

Mi rimarkis iun neoportunan kaj nenecesan manon-kodado de RdbCommandText en kelkaj ekzemploj (Inkluzivanta MSDNan dokumentaron).

Mi deziris atentigi al novuloj al BDC ke komandoj povas esti volvita en CDATAa etikedo en ilia "natura" Formo. Tiel, Ĉi tiu neoportuna konstruo:

<Nemoveblaĵo Nomo="RdbCommandText" Tipo="Sistemo.Ŝnuro">
ELEKTITA dbo.MCRSa_KOLONIO.Identigaĵo, Dbo.MCRSa_KOLONIO.Kolonio de dbo.MCRSa_KOLONIO
KIE (Identigaĵo &Gt;= @MinId) AND (Identigaĵo &Lt;= @MaxId)
</Nemoveblaĵo>

Povas esti pli bona reprezentis #?i tiu vojon:

<Nemoveblaĵo Nomo="RdbCommandText" Tipo="Sistemo.Ŝnuro">
<![CDATA[
ELEKTITA dbo.MCRSa_KOLONIO.Identigaĵo, Dbo.MCRSa_KOLONIO.Kolonio de dbo.MCRSa_KOLONIO
KIE (Identigaĵo >= @MinId) AND (Identigaĵo <= @MaxId)
]]>
</Nemoveblaĵo>

</Fino>

BDCa Enkonduko

Intro al BDC

Praktika Ekzemplo: BDCa ADF kiu konektas al SQLa datumaro kun integriĝinta uzanta identigaĵo kaj pasvorto

Mi devis kabligi supre MUSKON al SQLa datumaro tra BDC. Por elprovanta/POCajn celojn, Mi deziris al embed la SQLa konta uzanta identigaĵo kaj pasvorto en la ADF. Komencanta kun Ĉi tiu ŝablono (http://msdn2.microsoft.com/en-us/library/ms564221.aspx), Mi kreis ADF kiu konektas al aparta SQLa servila okazo kaj ensalutas kun specifa uzanta identigaĵo kaj pasvorto kaj montrita en ĉi tiu ereto:

  <LobSystemInstances>
    <LobSystemInstance Nomo="ClaimsInstance">
      <Nemoveblaĵoj>
        <Nemoveblaĵo Nomo="AuthenticationMode" Tipo="Sistemo.Ŝnuro">PassThrough</Nemoveblaĵo>
        <Nemoveblaĵo Nomo="DatabaseAccessProvider" Tipo="Sistemo.Ŝnuro">SqlServer</Nemoveblaĵo>
        <Nemoveblaĵo Nomo="RdbConnection Datuma Fonto" Tipo="Sistemo.Ŝnuro">Reala serviloreala okazo</Nemoveblaĵo>
        <Nemoveblaĵo Nomo="RdbConnection Komenca Katalogo" Tipo="Sistemo.Ŝnuro">Reala komenca katalogo</Nemoveblaĵo>
        <Nemoveblaĵo Nomo="RdbConnection Integrigita Sekurecon" Tipo="Sistemo.Ŝnuro">SSPI</Nemoveblaĵo>
        <Nemoveblaĵo Nomo="RdbConnection Pooling" Tipo="Sistemo.Ŝnuro">Falsa</Nemoveblaĵo>

        <!-- Ĉi tiuj estas la kernaj valoroj: -->
        <Nemoveblaĵo Nomo="RdbConnection Uzanta IDENTIGAĴO" Tipo="Sistemo.Ŝnuro">alCtual Uzanta IDENTIGAĴO</Nemoveblaĵo>
        <Nemoveblaĵo Nomo="RdbConnection Pasvorto" Tipo="Sistemo.Ŝnuro">Reala Pasvorto</Nemoveblaĵo>
        <Nemoveblaĵo Nomo="RdbConnection Fidita_Konekton" Tipo="Sistemo.Ŝnuro">Falsa</Nemoveblaĵo>

      </Nemoveblaĵoj>
    </LobSystemInstance>
  </LobSystemInstances>

Ĝi ne estas plej bona praktiko, Sed ĝi estas utila por rapida kaj simpla konfiguracio por elprovado. Tio ĉi estis surprize malfacila kalkuli ekstere. Mi neniam trovis praktikan ekzemplon kun serĉaj ŝlosilvortoj:

  • Adf integriĝinta userid kaj pasvorto
  • Embed uzanta identigaĵo kaj pasvorto en adf
  • Embed uzanta identigaĵo kaj pasvorto en adf bdc
  • Sharepoint bdc enkonduko
  • Sharepoint embed uzanta identigaĵo kaj pasvorto en adf

</Fino>

Aboni al mia blogo.