CAONAIGH: Thabhairt cothrom le dáta liosta saincheaptha

Tá samplaí maithe go leor de thabhairt cothrom le dáta liostaí saincheaptha tríd an SDK. Anseo tá eile fós.

Fadhb Gnó: Tá foirm InfoPath deartha a chuireann ar chumas úsáideoirí a chur isteach foréilimh a cheannach ar líne. Ba chóir go mbeadh líon Foréileamh PO luachanna slánuimhir atá bunaithe ar ord traidisiúnta agus ríomh go huathoibríoch.

Réiteach Gnó: Cruthaigh liosta MOSS saincheaptha ina dhá cholún: "ControlField" and "ControlValue". Tá an colún luach an uimhir foréileamh cheannach eile. Note that the generic "control" ainmniú coinbhinsiún foráil do réimsí rialaithe sa todhchaí is féidir a úsáid mar is gá.

Réiteach Teicniúil: Cruthaigh seirbhís gréasáin rochtain ag an gcliant InfoPath. Filleann an tseirbhís idirlín ar ais an uimhir foréileamh cheannach eile agus cothrom le dáta ar an luach an liosta.

Ceachtanna a Foghlaimíodh:

  • Nuair a chur leis an tseirbhís seo gréasáin mar fhoinse do na sonraí ar an bhfoirm InfoPath, Fuair ​​mé gur gá é a thiontú go le UDC agus é a stóráil i leabharlann nasc sonraí.
  • Chinn mé freisin sé riachtanach chun a chumasú tras fearainn scriptithe trí sheirbhísí lárnacha riaracháin // bainistíochta i bhfeidhm // cumraíocht freastalaí fhoirm.
  • An chéad uair a rinne an bhfoirm teacht ar an tseirbhís idirlín, a thógann sé ar feadh tamaill agus ar ócáid, Bheadh ​​sé am amach. Fiddled mé le suímh i gcumraíocht freastalaí fhoirm a leathnú na socruithe Teorainn ama agus go bhfuil an chuma chun cabhrú le.

An Cód:

ag baint úsáide as Córas;
ag baint úsáide as System.Web;
ag baint úsáide as System.Web.Services;
ag baint úsáide as System.Web.Services.Protocols;
ag baint úsáide as Microsoft.SharePoint;
ag baint úsáide as System.Configuration;

[WebService(Namespace = "http://www.conchango.com/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
poiblí ranga PoService : System.Web.Services.WebService
{
poiblí PoService () {

//Uncomment the following line if using designed components
//InitializeComponent();
}

/// <achoimre>
/// Obtain the next PO number from the sharepoint po number control list.
/// Increment the PO number in that list.
/// </achoimre>
/// <tuairisceáin></tuairisceáin>
[WebMethod]
poiblí teaghrán GetNextPoNumber()
{
teaghrán SpPoControlSiteName; // Name of the actual MOSS site that hosts the PO Control list.
teaghrán SpPoControlListName; // Name of the actual MOSS list containing the Po control.

SpPoControlSiteName = ConfigurationSettings.AppSettings["PoControlListHostingSite"].ToString();
SpPoControlListName = ConfigurationSettings.AppSettings["PoControlList"].ToString();

teaghrán nextPoReqNumber = "xyzzy";

ag baint úsáide as (SPSite site = nua SPSite(SpPoControlSiteName))
{
ag baint úsáide as (SPWeb web = site.OpenWeb())
{

SPList currentList = web.Lists[SpPoControlListName];

foreach (Spit controlItem i currentList.Items)
{

más rud é (((teaghrán)controlItem["ControlField"]).Cothrom("NextPoNumber"))
{
nextPoReqNumber = (teaghrán)controlItem["ControlValue"];

int int_nextPoReqNumber;
int_nextPoReqNumber = Tiontaigh.ToInt32(nextPoReqNumber);

int_nextPoReqNumber ;

controlItem["ControlValue"] = int_nextPoReqNumber;
controlItem.Update();
}

} // Locating, reading and updating the PO number in the list.


} // using spweb web = site.openweb()
} // using spsite site = new spsite("http://localhost/mizuho")

ar ais nextPoReqNumber;

}
}

Shíl amháin ar "CAONAIGH: Thabhairt cothrom le dáta liosta saincheaptha

  1. KSP Scríobh:
    Hi Paul,
    Tá staid den chineál céanna a bhfuil tú go léir ina luaitear ach tá an fhadhb ba mhaith liom seo a úsáid servie gréasáin ar chothromaíocht server.Hence ualach,conas a láimhseáil iarrataí concurrency sa chás seo nó conas a dhéanamh ar an fanacht iarratas nua agus níor cheart ach iarratas amháin cothrom le dáta an liosta líon till ansin ba chóir gach iarratas eile a bheith i que.Please in iúl dom conas a bhaint amach.
    Go raibh maith agat Roimh Ré.
    Freagra

Leave a Reply

Ní thabharfar do sheoladh r-phoist a fhoilsiú. Réimsí riachtanacha atá marcáilte *