== Функции, тригери и процедури = Функции **- fn_stadium_available_seats** - враќа колку седишта се достапни за даден натпревар [[BR]][[BR]] [[Image("1 (2).png")]][[BR]][[BR]] **- fn_team_revenue_for_season** - враќа приход од продадени билети и спонзори, како и вкупен приход[[BR]][[BR]] [[Image("2 (2).png")]][[BR]][[BR]] = Тригери **- trg_ticket_capacity_limit** - не дозволува внес на билет доколку стадионот е веќе полн за тој натпревар[[BR]][[BR]] [[Image("3 (2).png")]][[BR]][[BR]] **- trg_prevent_self_transfer** - не дозволува да се направи трансфер во ист тим[[BR]][[BR]] [[Image("4 (2).png")]][[BR]][[BR]] **- trg_match_no_duplicate_same_day** - не дозволува да се додаде натпревар доколку некој од тимовите веќе имаат некој друг натпревар на истиот датум[[BR]][[BR]] [[Image("5 (2).png")]][[BR]][[BR]] = Процедури **- sp_scan_ticket** - го означува билетот како скениран доколку веќе не е и доколку натпреварот не е поминат[[BR]][[BR]] [[Image("6 (2).png")]][[BR]][[BR]] **- sp_cancel_match(p_match_id)** - ги брише сите tickets, lineups, events, odds, и referee assignments за натпревар, и на крај го брише самиот натпревар.[[BR]][[BR]] [[Image("7 (2).png")]] [[Image("8 (2).png")]] = Функции **- fn_bookmaker_best_odds** - враќа најдобрите квоти за домаќин, нерешено и гостин од сите букмејкери за даден натпревар, со проверки дали натпреварот и квотите постојат[[BR]][[BR]] [[Image("f1.png")]][[BR]][[BR]] **- fn_player_career_transfer_stats** - враќа детална статистика за трансферната кариера на играч: вкупен број и вредност на трансфери, просечен, највисок и најнизок надомест, тековен и претходен клуб и години од првиот трансфер, со проверки дали играчот и трансферите постојат[[BR]][[BR]] [[Image("f21.png")]][[BR]][[BR]] [[Image("f22.png")]][[BR]][[BR]] = Тригери **- trg_lineup_validation** - не дозволува внес на повеќе од 18 играчи во составот на еден тим за даден натпревар, и не дозволува играч да биде во составот на два различни тима на ист датум[[BR]][[BR]] [[Image("t1.png")]][[BR]][[BR]] **- trg_validate_contract_dates** - не дозволува внес на договор чиј краен датум е пред почетниот, не дозволува преклопување на два активни договори за ист играч и тим, и не дозволува повеќе од еден договор без краен датум истовремено[[BR]][[BR]] [[Image("t2.png")]][[BR]][[BR]] = Процедури **- sp_transfer_player** - ја регистрира трансферот на играч меѓу два тима: проверува дали играчот и тимовите постојат, го затвора активниот договор кај претходниот тим со поставување на end_date, го креира типот на трансфер доколку не постои, и вметнува нов запис во Transfer табелата[[BR]][[BR]] [[Image("p11.png")]][[BR]][[BR]] [[Image("p12.png")]][[BR]][[BR]] **- sp_add_match** - Додава нов натпревар со целосна валидација: постоење на сезона, тимови, стадион, различни тимови, датум, и капацитет на стадионот.[[BR]][[BR]] [[Image("ad1.png")]][[BR]][[BR]] [[Image("add2.png")]][[BR]][[BR]]