2012-05-25 4 views
-1


이 작업을 수행하기 위해 많은 노력을했지만 작동 방법을 모릅니다. Apex/Salesforce 수수께끼의 일반적인 프로그래밍 문제는 아닙니다.Apex - 범위 - 변수

시나리오 : 예를 들어 2 개의 부모 개체가있는 연결 개체가 있습니다. 부모 개체 1, 부모 2 및 연결 개체 3 개가 있다고 가정 해 보겠습니다. Parent1에 연결된 단 하나의 Junction 객체가있을 때 Parent (이 것은 SOQL을 통해 작동합니다)의 ID를 가져 오려고합니다. 그러나이 단 하나의 Junction 객체는 삭제됩니다. 1 Junction 객체가있을 때 Parent1의 ID에 대한 액세스를 저장하려고합니다. 참고 :이 모든 것은 for 반복문을 추가하거나 삭제할 때마다 반복되는 for 루프 내에서 발생합니다!

내가 시도한 것 : 의사 코드!

Public static String parent1Id; 

for (everytime a junction object is added/deleted) 
{ 

    if (listOfJunctionObjects.size() == 1) 
    { 
     parent1Id = [Do a SOQL to get the Id from the junction object]; 
    } 

    if (listOfJunctionObjects.size() == 0) 
    { 
     //CANNOT ACCESS THE parent1Id here 
     //The if statements get executed at different times everytime 
     the for loop runs 
    } 
} 

내가 생각하는 것이 옳다 : 나는 문 parent1Id의 값이 같은 최초의 실행 후 그 때마다 경우 있도록 parent1Id 상수 또는 무언가의 일종으로 저장해야한다고 생각!

도와주세요. 정말 도와주세요.

+1

명확하게하기 위해 클래스 변수 (parent1Id)를 설정 중이며 나중에 액세스 할 수 없습니까? 별도의 실행 스레드에서 계속 실행되기를 기대합니까? 문제를 쉽게 찾을 수있는 완전한 .cls 파일을 게시 할 수 있다면. –

답변

0

부모 1의 ID를 저장 한 Parent1에 필드를 추가 한 다음 여러 번의 반복을 통해 액세스했습니다.