2014-10-24 4 views
0

개발 중에 동일한 서비스에 대해 여러 배포가 발생하는 경우 AIF 서비스가 중단되어 인바운드 포트에 액세스 할 때 심각한 오류가 발생합니다. AIF 서비스 양식 (AOT, Forms, AIFServices)을 열고 새로 고침 단추를 눌러 AIF 서비스를 새로 고칠 수 있습니다. 완료하는 데 약 15 분이 걸립니다.Dynamics Ax 2012 R2 AIF 서비스 새로 고침이 너무 오래 걸림

왜 그렇게 오래 걸리고 실제로 무엇을하는지에 대한 아이디어가 있습니까?

감사합니다.

답변

6

AifServices 양식은 선언 된 모든 서비스를 새로 고치며 많은 시간이 걸립니다.

양식을 변경하여 선택한 서비스 만 새로 고침했습니다.

void clicked() 
{ 
    // <SingleServiceRefresh> 
    DialogButton dialogButton; 
    // </SingleServiceRefresh> 

    super(); 

    // <SingleServiceRefresh> 
    dialogButton = Box::yesNoCancel('Click Yes to update all services. No to refresh only the selected.', DialogButton::Cancel); 
    if (dialogButton == DialogButton::No) 
    { 
     AifServiceGenerationManager::registerService(aifService.Name); 
    } 
    else if (dialogButton == DialogButton::Cancel) 
    { 
     return; 
    } 
    else 
    // </SingleServiceRefresh> 
    { 

     startLengthyOperation(); 
     AifServiceGenerationManager::registerServices(); 
     aifService_ds.executeQuery(); 
     aifService_ds.research(); 
     endLengthyOperation(); 
    } 
} 
+0

상쾌/등록 된 모든 서비스가 그렇게 오래 걸릴 것이라는 의미가 있습니다 : 이것은 \Forms\AifService\Designs\Design\[ActionPane:ActionPane]\[ActionPaneTab:ActionPaneTab]\[ButtonGroup:ButtonGroup]\Button:Register\Methods\clicked에 대한 변경된 코드입니다. 나는 여전히 개별 서비스에 대한 새로 고침/등록이 백그라운드에서 무엇을하는지, 특히 서비스를 변경했기 때문에 동일한 서비스를 여러 번 새로 고침/등록하는 경우에 궁금해합니다. –

+0

정보 주셔서 감사합니다. 나는 AifServiceGenerationManager를 보았고 이제는 더 나은 아이디어를 얻었다. –