Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 14 Next »

Podstawowe informacje

 Formularz zadania udostępnia API, które ułatwia wykonywanie podstawowych operacji na potrzeby dostosowania go do potrzeb klienta.

API zawiera ServiceFactory, który jest zbiorem serwisów odpowiedzialnych za poszczególne komponenty formularza.

ServiceFactory jest dostępny na globalnym scope (window).

 

Serwisy

ServiceFactory daje dostęp do następujących serwisów:

  • ActivityInfoService - odpowiedzialny za przechowywanie podstawowych informacji o zadaniu, dostępny z globalnego scope za pomocą wywołania:

 

var activityInfoService = ServiceFactory.getActivityInfoService();


  • CommentsService - odpowiedzialny za komentarze zadania, dostępny z globalnego scope za pomocą wywołania:
var commentsService = ServiceFactory.getCommentsService();

 

  • FormService - odpowiedzialny za zakładkę formularza ze zmiennymi formularza, dostępny z globalnego scope za pomocą wywołania:
var formService = ServiceFactory.getFormService();

 

  • MessageService - odpowiedzialny za wyświetlanie wiadomości w postaci animowanych "chmurek" dla użytkownika aktualnie korzystającego z formularza, dostępny z globalnego scope za pomocą wywołania:
var messageService = ServiceFactory.getMessageService();

 

  • VariableService - odpowiedzialny za zarządzanie zmiennymi formularza nie znajdującymi się w tabelach dynamicznych, dostępny z globalnego scope za pomocą wywołania:
var variableService = ServiceFactory.getVariableService();

 

  • VariableSetService - odpowiedzialny za zarządzanie tabelami dynamicznymi i zmiennymi znajdującymi się w nich, dostępny z globalnego scope za pomocą wywołania:
var variableSetService = ServiceFactory.getVariableSetService();

 

API formularza posiada także dodatkowy serwis SuncodeFormService. Jest on również dostępny na globalnym scope (window) i jest obsługiwany niezależnie od pozostałych serwisów. Posiada jedną funkcję, która daje możliwość dodania dowolnej ilości akcji, jakie zostaną wykonane po zbudowaniu formularza (wszystkie komponenty na formularzu będą już dostępne). Funkcja ta ma nazwę addOnReadyEvent. Przykładowe wykorzystanie jest następujące:

SuncodeFormService.addOnReadyEvent( function() {
 alert( 'Pierwsza akcja' );
} );

SuncodeFormService.addOnReadyEvent( function() {
 alert( 'Druga akcja' );
} );

Użycie serwisu w powyższy sposób spowoduje, że po zbudowaniu formularza zostaną kolejno wyświetlone wiadomości: 'Pierwsza akcja' i 'Druga akcja'. Kolejność wykonywania akcji jest zależna od ładowania skryptów, a w ramach jednego pliku od kolejności dodawania akcji.

 

Funkcja addOnReadyEvent przyjmuje jeden parametr:

  • event (typ Function) - funkcja JavaScript wykonana po zbudowaniu formularza

Funkcja ta nie zwraca żadnych rezultatów.

 

Od wersji 3.1.6 możliwe jest dodatkowe grupowanie akcji zmieniających układ formularza (layout). Takie grupowanie zmian układu jest znacznie szybsze niż wykonywanie tych akcji osobno.

SuncodeFormService.suspendLayouts();
try {
	// wiele akcji
	variableService.hide('a');
	variableSetService.hide('a');
}
finally {
	SuncodeFormService.resumeLayouts();
}
  • No labels