2011-03-02 9 views
0

버튼 클릭 이벤트에 적절한 로터스 스크립트를 사용하여 superior1 필드에서 선택하고 배치 할 직원의 키워드 목록을 팝업합니다. 매개 변수를 지정할 수 있는지 확실하지 않습니다. .. 저와 함께 도와주세요 ... 아래의 스크립트를 따라 가면서 작업을하지 못했습니다 ... 빈 대화 목록을 보여주고 있습니다 : ... (또는 다른 방법으로 나에게 대안 수식이나 sumthin을 제공하여 해결하십시오 ... 들으 많이 ... 많이 흐리 스토 & mbonaci가 ... :) 나는 pickliststrings 함께 wrked했는데 내가있어버튼 클릭 이벤트 - 로터스 스크립트

Sub Click(Source As Button) 
    Dim session As New notessession 
    Dim view,view1 As NotesView 
    Dim doc,doc1 As notesdocument 
    Dim db As Notesdatabase 
    Set db=session.CurrentDatabase 

    Dim Overdb As notesdatabase 

    Set Overdb=session.GetDatabase(db.server, "Master\\ASEAN_Staff.nsf") 

    Dim workspace As New NotesUIWorkspace 
    Dim uidoc As NotesUIDocument 
    Dim picklist As Variant 
    Set uidoc = workspace.CurrentDocument 

    If Superior1= "" Then 

     Sup1$ = uidoc.FieldGetText("Superior1") 

     picklist = workspace.PickListStrings(PICKLIST_CUSTOM,_ 
     False,_ 
     db.server,_ 
     "Master\\ASEAN_Staff.nsf",_ 
     "x_asean_search",_ 
     "Select Name",_ 
     4,_ 
     Sup1$) 


    End If 

End Sub 

들으 와트 내가 superior1의 목록을 표시 즉 원 그룹 열에 의해 분류 된 키워드 ... foll은 내가 사용하는 스크립트입니다 ...

Sub Click(Source As Button) 
Dim session As New notessession 
Dim view As NotesView 
Dim view1 As notesview 
Dim doc,doc1 As notesdocument 
Dim db As Notesdatabase 
Set db=session.CurrentDatabase 

Dim Overdb As notesdatabase 

Set Overdb=session.GetDatabase(gsserver, gspath + "Master\\ASEAN_Staff.nsf") 

Dim workspace As New NotesUIWorkspace 
Dim uidoc As NotesUIDocument 
Dim picklist As Variant 
Set uidoc = workspace.CurrentDocument 

If Superior1= "" Then 

    'Sup1 = uidoc.FieldGetText("Superior1") 

    'Ofc = uidoc.FieldGetText("Office") 
    Gp = uidoc.FieldGetText("Group") 
    'og = doc.Office + doc.Group 


    picklist = workspace.PickListStrings(PICKLIST_CUSTOM,_ 
    False,_ 
    gsserver,_ 
    "Master\\ASEAN_Staff.nsf",_ 
    "x_asean_search",_ 
    "Select Name",_ 
    "Choose",_ 
    1,_ 
    Gp) 



End If 

End Sub 

이제 목록에서 키워드를 선택하십시오. 예 : "Executive"shud는 현재 문서/양식의 "Superior1"필드에 배치됩니다 ...이 스크립트를 사용하십시오. . PLZ 일곱 번째 위치에 누락 된 인수가 있기 때문에,

서면으로

답변

1

에서, PickListStrings이 오류가 발생합니다 ... 도와주세요 - prompt$ (help for PickListStrings가) 및 메모는이 경우에 숫자 (4를 기대하지 않습니다)를 인수로 사용합니다.

보다 기타 :

  • 당신이 ("마스터 \ ASEAN_Staff.nsf"에서 "x_asean_search") 대상보기를 열고 필드 Superior1 (당신이 테스트 값) 만들기에서 문자열을 입력 시도 되세요 그런 카테고리가 있습니까? 보기에 해당 범주가 있으면 초점이 해당 범주로 이동해야합니다.
  • 상태 표시 줄에 Sup1$을 인쇄하여 예상 값이 포함되어 있는지 확인하십시오.
  • 보기의 네 번째 열이 반환하려는 값입니까?

는 문제가 발생하지 않습니다,하지만 좋은 염두에두고 :

  • Dim view,view1 As NotesView 변수 유형 Variantview 및 유형 NotesViewview1 선언합니다. 예기치 않은 동작의 가능성을 피하려면 별도의 줄에 두십시오. 예를 들어 여기에 If (view is Nothing) Then 문은 "유형 불일치"오류가 발생합니다.
  • Superior1 (If Superior1= "" Then)은 값이 EMPTY 인 변형 인 것처럼 보이므로 조건은 항상 true입니다. Option Declare을 사용하면이 작업을 컴파일하지 못하게하는 것이 좋습니다.
+0

@mbonaci이 옳다는 훨씬 더 간결 솔루션으로 수식을 사용하는 것이 좋습니다 수 있습니다. 내 생각에, @SarahXP는 현재 열어 둔 문서의 "Superior1"필드의 값에 해당하는 범주 아래에서 대상보기의 선택 사항을 대상보기로 제한하려고합니다. 이 경우에는 대신 @DbLookup을 사용해야합니다. 예를 들면 다음과 같습니다. @DbLookup ("ReCache"; @Subset (@DbName; 1) : "Master \\ ASEAN_Staff.nsf"; "x_asean_search"; Superior1; 대화 상자에서 결과 목록을 사용하십시오. – Hristo

+0

@SarahXP - 또한 LotusScript를 고수하기로 선택한 경우 "Master \\ ASEAN_Staff.nsf"에서 백 슬래시 하나를 제거해보십시오. 필요하다고 생각합니다. – Hristo

+0

음 ... 나는 "Superior1"필드에 선택된 키워드를 얻는 방법에 대한 해결책을 가지고 있습니다 ... 누군가 이걸 도와 줄 수 있겠습니까? "Office"와 "Fields"의 두 필드를 비교하고 싶습니다. 보기의 열 "OfficeGroup"... 예 : 필드 "AB"열이있는 값 및 필드 B 값 ... hw 두 필드를 연결합니다 ..? ... – SarahXP

0

이유는 간단하게, @DbColumn 식으로 대화 목록 필드를 사용하지 않는 선택 (필드 속성의 두 번째 탭) :

@DbColumn(class : cache ; server : database ; view ; columnNumber) 

예 :

@DbColumn("ReCache"; ""; "x_asean_search"; 4) 

모두 반환됩니다 현재 데이터베이스의 "x_asean_search"보기의 네 번째 열에있는 값.여기

세부 사항 : http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/topic/com.ibm.designer.domino.main.doc/H_DBCOLUMN_NOTES_DATABASES.html

+0

thx Hristo & mbonaci ... 나는 pickliststrings을 가지고 놀랐으며, 내가 원했던 것, 즉 선택할 수있는 superior1 키워드의 목록을 표시하고있다. 나는 foll 스크립트를 사용했습니다 : – SarahXP

+0

음 ... "Superior1"필드에 선택된 키워드를 얻는 방법에 대한 해답을 얻었습니다. 누구도 이걸 도와 줄 수는 없지만 ... 2 필드의 조합을 비교하고 싶습니다. 보기의 "OfficeGroup"열이있는 "Office"& "Fields"... 예 : 필드 값 "AB"열의 값 및 필드 B 값 ... hw 두 필드를 연결합니다 ..? 나는이 plz ... 수식 대신 수식 대신에 많은 스크립트를 선호합니다 ... – SarahXP

관련 문제