모스: 사용자 지정 목록 업데이트

SDK 통해 사용자 지정 목록을 업데이 트의 많은 좋은 예입니다.. 여기는 또 다른.

비즈니스 문제: InfoPath 양식을 설계 되었습니다 수 있습니다 사용자가 온라인 입력 요청 구매. 포 징 발 번호 전통적인 순서 이어야 한다 정수 값을 기반으로 하 고 자동으로 계산.

비즈니스 솔루션: 두 개의 열이 포함 된 사용자 정의 이끼 목록 만들기: "ControlField" 그리고 "과". 값 열에 다음 구매 요청 서 번호 포함. Note는 일반 "제어" 필요에 따라 사용할 수 있는 미래의 컨트롤 필드에 대 한 명명 규칙을 제공 합니다..

기술 솔루션: InfoPath 클라이언트에 의해 액세스 하는 웹 서비스 만들기. 웹 서비스 반환 합니다 다시 다음 구매 요청 서 번호 및 목록의 값을 업데이트.

교훈:

  • InfoPath 양식으로이 웹 서비스를 데이터 소스로 추가 하는 경우, 나는 udc를 변환 하 고 데이터 연결 라이브러리에 저장 하는 데 필요한 발견.
  • 나 또한 중앙 서비스 관리를 통해 교차 도메인 스크립팅을 사용 하도록 설정 하는 데 필요한 발견 // 응용 프로그램 관리 // 폼 서버 구성.
  • 처음으로 양식을 웹 서비스에 액세스 하 려, 그것은 걸립니다 그리고 때때로, 그것은 시간을 것입니다.. 시간 제한 설정에 폼 서버 구성에서 설정 fiddled 고 그 도움을 보 였.

코드:

사용 하 여 시스템;
사용 하 여 System.Web;
사용 하 여 System.Web.Services;
사용 하 여 System.Web.Services.Protocols;
사용 하 여 Microsoft.SharePoint;
사용 하 여 System.Configuration;

[웹 서비스(Namespace = "http://www.conchango.com/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
공용 클래스 PoService : System.Web.Services.웹 서비스
{
공용 PoService () {

//다음 줄 사용 하는 경우 디자인 구성 요소 주석
//InitializeComponent();
}

/// <요약>
/// Sharepoint가 번호 컨트롤 목록에서 다음 사서함 번호를 가져올.
/// 그 목록에서 주문서 번호를 증가.
/// </요약>
/// <반환></반환>
[WebMethod]
공용 문자열 GetNextPoNumber()
{
문자열 SpPoControlSiteName; // 포 제어 목록을 호스팅하는 실제 MOSS 사이트의 이름.
문자열 SpPoControlListName; // 포 컨트롤을 포함 하는 실제 모스 목록 이름.

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

문자열 nextPoReqNumber = "xyzzy";

사용 하 여 (SPSite 사이트 = 새로운 내용 SPSite(SpPoControlSiteName))
{
사용 하 여 (SPWeb 웹 사이트를 =. OpenWeb())
{

SPList currentList = 웹. 목록[SpPoControlListName];

foreach (SPItem controlItem 에서 currentList.Items)
{

만약 (((문자열)controlItem["ControlField"]).같음("NextPoNumber"))
{
nextPoReqNumber = (문자열)controlItem["과"];

int int_nextPoReqNumber;
int_nextPoReqNumber = 변환.ToInt32(nextPoReqNumber);

int_nextPoReqNumber ;

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

} // 찾기, 읽기 및 업데이트 목록에서 주문서 번호.


} // spweb 웹을 사용 하 여 site.openweb =()
} // spsite 사이트를 사용 하 여 새로운 spsite =("http://localhost/미즈호 ")

반환 nextPoReqNumber;

}
}

하나는 "에 대한 생각모스: 사용자 지정 목록 업데이트

  1. KSP 쓴:
    안녕 폴,
    우리는 비슷한 상황이 당신이 무엇을 언급 하지만 문제는 부하 균형 서버에이 웹 servie를 사용 하려면.따라서,이 경우 동시성 요청을 처리 하는 방법 또는 얼마나 새로운 요청을 대기 하 고 하나만 요청까지 목록 번호를 업데이트 해야 다음 모든 다른 요청 날개에 있어야이것을 달성 하는 방법 가르쳐 주세요.
    감사 사전에.
    회신

회신을 남겨 주세요 KSP 쓴: 답장 취소

귀하의 이메일 주소는 공개되지 않습니다. 필요 입력 사항은 표시되어 있습니다 *