1s Foninio darbo darbuotojo procesas baigėsi neįprastai. Fono darbo procesas baigėsi neįprastai. Asinchroninio programavimo samprata

Kl .: foninis darbo procesas užstrigo...


Geros dienos ir geros savaitės visiems!
Įmonės apskaita, 3.0 leidimas (3.0.46.11).
Platforma 8.3.9.2033.
Skelbiant dokumentus paketais, atsiranda klaida „Foninis darbo procesas užstrigo“. Priežastis nenurodyta...
Iš naujo paleidus SQL serverį, serveris 1C (niekada nežinai) nepadeda... Gal kas susidūrėte su panašia problema ??? Net sunku pasakyti, po ko atsirado ši klaida, nes grupinis valdymas (mėnesio uždarymas) nebuvo naudojamas ilgą laiką ...

Atsakymas:() () Vėl laba diena) Įjungiau technologijų žurnalą ir radau šiuos įdomius dalykus (gal žinote, kokia yra problema?):
Buvo bandoma operuoti objektą, kuris nėra lizdas...
Procesas baigiasi. Išeinantis skambutis atmestas...
Nerasta priglobto serverio...

Kl.: Fono darbai


1C platforma: Enterprise 8.3 (8.3.9.2170), conf BP 3.0.
Integravimas per išorinius duomenų šaltinius sukonfigūruotas konfigūracijoje (DBMS tipas – OracleDatabase). Pridėta nemažai lentelių, iš kurių įkeliami NSI ir skelbimai. Nes daug duomenų, buvo nuspręsta atlikti paketinį atsisiuntimą naudojant fonines užduotis. Porcijos dydis - 100 000, partijos dydis - 10 000, operacijų skaičius viename dokumente - 1000, vienu metu atliekamų foninių užduočių skaičius - 8.
Pradedu, kraunu, viskas ok. Bet jei užsidedu nakčiai, tai toks jausmas, kad 1s pereina į miego režimą, t.y. po kurio laiko, kaip rodo žurnalas, foninės užduotys prasideda, bet nesibaigia. Rezultate paaiškėjo, kad užduotys prasidėdavo 12 valandą nakties, o atliktos 8 valandą ryto (kai slampinėjau su pele) ir po to jos toliau buvo vykdomos įprastu režimu. Pradėta naudoti tiek ploname, tiek storame kliente. Yra parametruose nustatymas - pasyvaus seanso metu užmigimo laikas yra 1200, bet ar tai ne tik plonam klientui ir ar tai gali būti problema? Nenoriu jo išjungti. vartotojai neišeina iš programos, tegul užmiega. Gal kas susidūrėte su panašia problema? Kaip nusprendėte?

Atsakymas:

Tokios galimybės nėra.

Kokia prasmė vykdyti foninį darbą ir laukti, kol jis bus baigtas?
kad nebūtų daugiau nei 8 foniniai darbai?

Nuvilkite fono darbo „tvarkyklę“ į serverio pusę ir leiskite jam valdyti...

Pentuim D840 atlikau 40-50 foninių užduočių - skrydis normalus, tada jau guli ant procesoriaus / atminties.

Klausimas: Kaip perkelti failą į foninį darbą


8.3.6.2152 platforma
Būtina perkelti failą iš UV į fono užduotį tolesniam apdorojimui.
Ar taip:
&AtClient
Procedūra Command1(Command) FileDD = Nauji dvejetainiai duomenys(failo pavadinimas); StorageAddressForBackground = Įdėkite į laikinąją saugyklą(FileDD, UniqueIdentifier); StartUploadUploadOnServer(StorageAddressToBackground) EndProcedure &OnServer Funkcija StartUploadUploadOnServer(StorageAddressForBackground) Metodas Parametrai = naujas masyvas; Metodo parametrai.Add(StorageAddressForBackground); Užduotis = BackgroundTasks.Run("MyCommonModule.MyBackground", MethodParameters); EndFunctions
Bendrajame modulyje:

Procedūra MyBackground(Saugyklos adresas) Eksportuoti FileDD = GetFromTempStorage(Saugyklos adresas); Jei TypeValue(FileDD) = Tipas("Dvejetainiai duomenys") Tada Žurnalo įrašas Registruotis Žurnalo įrašas Registruotis(„Debug“, „No DD“); EndIf ; EndProcedure Bandyta taip: PlaceFiles = New Array; PlacedFiles.Add(Naujas perkeliamo failo aprašymas(Failo pavadinimas)); PlacedFiles = naujas masyvas; Jei NE „PutFiles“ („PutFiles“, „PutFiles“, „False“, „UniqueIdentifier“) - tada grąžinkite; EndIf ; StorageAddressForBackground = PlacedFiles.Storage; Bandyta taip: StorageAddressForBackground = PlaceInTemporaryStorage(Undefined, UniqueIdentifier); Įdėti failą (Saugyklos adresas fonui, failo pavadinimas, klaidingas );
Iš fono į klientą per laikiną saugojimą jis paprastai perkeliamas, bet iš kliento į foną - dėl kokių nors priežasčių nieko.

Atsakymas: Apskritai viskas pasirodė gana paprasta. Pasirodo, galite kvailai perduoti BinaryData kaip parametrą foninei užduočiai. Nekvalifikuotiems gerbėjams pacituoti pagalbą ir pasakyti, kad „kaip numatyta“ darbo kodą:
&AtClient
Procedūra Command1(Command) RunUploadUploadOnServer(Nauji dvejetainiai duomenys(failo pavadinimas)) Procedūros pabaiga
&AtServer funkcija RunUploadUploadAtServer(DD) MethodParameters = naujas masyvas; Metodo parametrai.Pridėti(DD); Užduotis = BackgroundTasks.Run("MyCommonModule.MyBackground", MethodParameters); EndFunction procedūra MyBackground(FileDD) Eksportuoti Jei TypeVin(FileDD) = Tipas("Dvejetainiai duomenys") Tada Žurnalo įrašas Registruotis(„Debug“, „Yra DD“); Priešingu atveju Žurnalo įrašas Registruotis(„Debug“, „No DD“); EndIf ; Procedūros pabaiga

Klausimas: Foninės užduoties vykdymas tinkamam vartotojui


Sveiki!
Yra 1C: Enterprise 8.3 (8.3.11.2924), UT 11.3.4.93 klientas - serveris.
Šioje konfigūracijoje judesiai registre „Klientų atsiskaitymai už dokumentus“ atliekami ne dokumento registravimo metu, o pagal numatytą užduotį „Atidėtųjų atsiskaitymų su klientais / tiekėjais judėjimas atlikimas“.
Tuo pačiu metu suplanuota užduotis kartais sukeldavo klaidą, nes. bandė daryti judesius uždaruoju laikotarpiu (Iki redagavimo draudimo datos). Suplanuotos užduoties nustatymuose buvo užregistruotas specialus vartotojas, kuriam yra atvira draudimo data, po to viskas pradėjo veikti.
Tačiau reikia įsitikinti, kad judėjimo duomenys registruose yra atliekami tuo metu, kai yra paskelbtas dokumentas, o ne tada, kai prasideda suplanuota foninė užduotis.
Jei paleidžiate patį kodą, kuris atlieka įprastą užduotį registruojant dokumentą, tada atsiranda ta pati klaida – laikotarpis uždaromas. Ir jei programiškai paleidžiate foninę užduotį, kuri paleidžia tą patį kodą dokumento metu, tai sukelia lygiai tokią pačią klaidą, nes laikotarpis uždaromas, o programiškai paleista foninė užduotis paleidžiama dabartinio vartotojo vardu, o jo uždraudimo data uždaroma. Tačiau kai vykdoma suplanuota foninė užduotis, kurios planuoklyje nustatytas „teisingas“ vartotojas, viskas vyksta gerai. Štai kaip tai padaryti programiškai, kaip programiškai paleisti foninę užduotį norimam vartotojui "per planuoklį", kaip tai daro standartinės suplanuotos užduotys, pasakykite man prašau?

Atsakymas:

Ar jis ne pagal tą, pagal kurį jis sukonfigūruotas?
Tai turi būti konfigūracijos gedimas

Lis2007 pasakė:

Sveiki!Kartais suplanuota užduotis duodavo klaidą, nes. bandė daryti judesius uždaruoju laikotarpiu (Iki redagavimo draudimo datos). Suplanuotos užduoties nustatymuose buvo užregistruotas specialus vartotojas, kurio uždraudimo data yra atidaryta, po to viskas pradėjo veikti

Spustelėkite, kad atskleistumėte...

Klausimas: fono darbo derinimas


Foninė užduotis vykdoma su klaida. Nusprendė derinti.
Išorinį apdorojimą vykdau viena eilute:
BackgroundJobs.Run("MyModule.MyDarbas");
Nepaveikia modulio pertraukos taško.
Leidžiamas derinimas serveryje, derinimo langelis, automatinis ryšys, foninės užduotys – verta. Kokia dar gali būti problema?

Atsakymas:Įprastuose moduliuose buvo kreiptasi į funkcijas, kurioms reikalingas kliento, o ne serverio vykdymas. Turėjau juos įrašyti skliausteliuose #Jei klientas Tada. Fonas taip pat veikė.

Klausimas: Klaida atliekant keitimą


Laba diena, pasakyk, kur kasti:
Atlieku mainus buhalterinės apskaitos duomenų bazėje. Iš UT-shki per įprastą keitimą iškeliama apie tris dešimtis dokumentų. Jie ilgai galvoja (apie valandą) ir baigia žinute:
foninis darbo procesas sustojo

Tikriausiai nė viena rimta 1C 8.3 ar 8.2 konfigūracija negali išsiversti be suplanuotų ir foninių užduočių. Jie labai patogūs, nes bus vykdomi pagal aiškiai apibrėžtą grafiką be vartotojo ir programuotojo įsikišimo.

Pavyzdžiui, kartą per dieną reikia keistis duomenimis su kita programa. Naudodamas įprastas ir fonines užduotis, 1C šiuos veiksmus galės atlikti savarankiškai, pavyzdžiui, ne darbo valandomis. Šis metodas niekaip neturės įtakos vartotojų darbui ir sutaupys laiko.

Pirmiausia išsiaiškinkime, ką jie reiškia ir kuo skiriasi:

  • Suplanuota užduotis leidžia atlikti bet kokius konkrečius veiksmus pagal iš anksto sukonfigūruotą tvarkaraštį.
  • Fono darbas yra objektas, kuriame yra atliktini veiksmai.

Tarkime, kad mūsų įmonė kažką parduoda ir turi savo svetainę su kainomis. Kartą per dieną norime juos iškrauti, kad išlaikytume aktualumą.

Atidarykite konfigūraciją ir pridėkite suplanuotą užduotį.

Savybių nustatymas

Apsvarstykite svarbiausius parametrus, kuriuos reikia užpildyti jo savybėse.

  • Lauke" Metodo pavadinimas» pasirenkama kokio nors konkretaus bendrojo modulio procedūra, kuri bus vykdoma tiesiogiai. Jame bus nurodyti visi veiksmai, susiję su kainų įkėlimu į mūsų svetainę. Atminkite, kad vykdymas vyks serveryje. Tai logiška, nes įprastinės operacijos atliekamos be vartotojo įsikišimo.
  • Suplanuotą užduotį galima išjungti arba įjungti, jei reikia. Nereikia kiekvieną kartą keisti jo tvarkaraščio. Norėdami tai padaryti, ypatybių paletėje pažymėkite arba panaikinkite žymėjimą Naudojimas».
  • Kitas svarbus nustatymas – ar ši suplanuota užduotis bus atlikta iš anksto nustatytas, arba ne. Iš anksto nustatytos suplanuotos užduotys vykdomos automatiškai. Jei ši vėliavėlė nenustatyta, turėsite juos paleisti programiškai arba naudoti „Job Console“ apdorojimą su ITS.
  • Taip pat galite nurodyti pakartojimų skaičius ir intervalas tarp jų avarijos atveju. Neįprastas užbaigimas reiškia tas situacijas, kai užduotys nebuvo užbaigtos dėl klaidos.

Tvarkaraščio nustatymas

Paskutinis veiksmas yra mūsų įkėlimo į svetainę tvarkaraštis, naudojant atitinkamą hipersaitą ypatybių paletėje.

Įprastą tvarkaraščio nustatymą matysite 1C 8.3. Čia nėra nieko sudėtingo. Šiame pavyzdyje nustatome, kad kainų įkėlimas į svetainę būtų paleistas kasdien nuo penkių iki septynių ryto. Jei suplanuotos užduoties nespės atlikti iki 7:00, ji bus atlikta kitą dieną.

Suplanuotų užduočių blokavimas

Paleiskite standartinę 1C įmonės serverio administravimo įrankį ir atidarykite informacijos bazės, kurioje sukūrėte suplanuotą užduotį, ypatybes (1C kliento-serverio versijoms).

Atsidariusiame lange (įvedę prisijungimo vardą ir slaptažodį, kad galėtumėte pasiekti IB), patikrinkite, ar elemente „Įjungta suplanuotų užduočių blokavimas“ nėra nustatyta vėliavėlė. Jei susiduriate su situacija, kai užduotis neveikia, pirmiausia patikrinkite šį nustatymą.

Taip pat galite visiškai išjungti suplanuotas užduotis 1C 8.3. Norėdami išjungti konkrečias fonines užduotis, galite naudoti „Foninių užduočių konsolės“ apdorojimą, integruotą į naujausius leidimus.

Fonas ir suplanuoti darbai failo režimu

Šiuo režimu nustatyti ir vykdyti šias užduotis yra daug sunkiau organizuoti. Dažniausiai sukuriama papildoma sąskaita, kurios sesija visada bus atidaryta.

Suplanuotų užduočių aktyvinimas šiuo atveju atliekamas naudojant metodą „PerformProcessingTasks()“.

Taip pat galite naudoti šią konstrukciją:

Procedūros pavadinimas turi būti vykdomos kliento procedūros pavadinimas. Intervalas rodo, kiek sekundžių užtruks vykdymas. Parametras „Vieną kartą“ yra neprivalomas. Tai atspindi, ar nurodyta procedūra bus atliekama vieną ar kelis kartus.

Stebėjimo klaidos atliekant fonines užduotis

Galite peržiūrėti foninių užduočių eigą, taip pat galimų klaidų buvimą registracijos žurnale. Filtre nustatykite pasirinkimą į programą „Foninė užduotis“ ir, jei reikia, pasirinkite dominančio svarbą, pavyzdžiui, tik „Klaidos“.

Žurnale bus rodomi visi jūsų pasirinkimą atitinkantys įrašai su komentaru, kurį naudodami galėsite suprasti klaidos priežastį.

Problema nėra nauja ir retkarčiais aptariama įvairiuose 1C forumuose. Paprasčiausias ir populiariausias sprendimas yra iš naujo paleisti 1C serverį. Deja, ši parinktis ne visada priimtina arba labai nepageidautina. Šiuo atveju yra subtilesnių sprendimų.

Čia vienas iš šių būdų trumpos nuoseklios instrukcijos forma:

1. Naudodamiesi 1C serverio administravimo konsole ieškome problemos fNauja užduotis ryšių sąraše (pavyzdžiui, pagal jos pradžios laiką, palyginti su suplanuotos užduoties pradžios laiku užduočių konsolėje). Mes apibrėžiamedarbuotojo procesas, kuriame yra pakabintas ryšys.

2. Atidarykite šio proceso ypatybes ir pažymėkite kaip nenaudojamą (jei naudojamas vienas procesas, pirmiausia turite sukurti naują darbo procesą, kad visi aktyvūs ryšiai vėl prie jo prisijungtų). Mes prisimename šio proceso PID numerį.


3. Laukiame, kol visi esami ryšiai pereis iš išjungto proceso į vieną iš naudotų. Galiausiai mūsų procese turėtų likti tik probleminiai junginiai, kuriuos norime pašalinti.

4. Kompiuteryje su 1C serveriu, naudodami užduočių tvarkyklę, pagal neįgalaus darbuotojo proceso PID ieškome atitinkamo rphost.exe proceso ir jį ištriname.

5 . Tik tuo atveju galite ištrinti 1C darbo eigą, kurią išjungėme su administratoriaus pagalba. pultą ir, jei reikia, sukurkite naują.

6. Paruošta. Galite prisijungti prie užduočių konsolės ir patikrinti suplanuoto darbo būklę.

Šiame straipsnyje aprašysiu savo, kol kas nedidelę, patirtį organizuojant duomenų mainus universaliu EnterpriseData formatu.

Mano atveju birža sukonfigūruota tarp konfigūracijų „Prekybos valdymas 11.2“ (toliau – UT) ir „Įmonės apskaita 3.0.43“ (toliau – BP). Keitimasis yra vienpusis, iš UT į BP. Prieš atnaujinant Trade Management 11.1 į 11.2 versiją, duomenų mainai buvo sukonfigūruoti naudojant Data Conversion 2.0 konfigūraciją. Tačiau „Prekybos valdyme“ perėjus prie „11.2“, vartotojų darbo metu atsirado klaidų. Buvo atlikta mainų taisyklių atnaujinimo procedūra, tačiau tai rezultato nedavė. Derintuvas parodė, kad problema buvo keičiantis duomenimis. Abiejų konfigūracijų duomenų mainų nustatymą nuspręsta pašalinti ir nustatyti iš naujo.

Tiek „Prekybos valdymas“, tiek „Įmonių apskaita“ mums veikia kliento-serverio versijoje. Pradėjau nustatyti sinchronizavimą su UT. Atlikau taip, kad duomenys buvo iškelti iš UT į failą. Tai yra sinchronizavimas per tinklo katalogą. BP aš sukonfigūravau keitimą taip, kad iš BP jokie duomenys nebūtų iškraunami.

Klaida iškviečiant kontekstinį metodą (patvirtinti): klaida tikrinant XDTO duomenis:
Objekto „/Sandorio šalies banko sąskaita/Bankas“ struktūra neatitinka tipo: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1)KeyPropertiesBank
„BIC“ nuosavybės tikrinimas:
forma: elementas
pavadinimas: (http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1)BIC
tipas:
Trūksta būtino turto
Objektas: Sutartis su sandorio šalimi Nr. ...

Norėdami išanalizuoti klaidą, paspaudžiau piktogramą „Siunčiamų duomenų sudėtis“ ir registruotų kontraktų siuntimo šalių sąraše radau sutartį, pagal kurią atsirado klaida. Atidarė sutartį, įsiminė sutartyje nurodytą sandorio šalies banko sąskaitą. Tada perėjau prie banko sąskaitų, registruotų siuntimui. Paaiškėjo, kad reikiamos paskyros registruotųjų sąraše nėra. Perjungiau probleminę banko sąskaitą ir sutartį. Po to rankiniu būdu užregistravo reikiamą banko sąskaitą.

Bandžiau dar kartą sinchronizuoti duomenis iš UT. Šį kartą duomenys buvo sėkmingai įkelti. Tinklo aplanke buvo sugeneruotas XML failas, kuriame yra duomenų, skirtų perkelti iš UT į BP.

Kitas žingsnis – duomenų įkėlimas iš bylos į Įmonių apskaitos skyrių. Konfigūracijoje „Įmonės apskaita“ paspaudžiau mygtuką „Sinchronizuoti“, atsidarė apdorojimo forma su pranešimu „Duomenų analizė vykdoma“. Kiek vėliau pranešimas pasikeitė į „Duomenys įkeliami“. Tuo pačiu metu indikatorius ir skaitiklis rodė, kad iš BP iškraunama daugiau nei 80 tūkst. Tai mane supainiojo, nes nustatymuose nurodžiau, kad iš PSU nieko nereikia iškrauti. Apdorojimas užtruko ilgai ir baigėsi klaida:

Renginys: Bendravimas
(CommonModule.LongOperations.Module(371)): foninio darbo darbuotojo procesas užstrigo
ThrowException (ErrorText);

Norėdami lokalizuoti klaidą, bandžiau pakeisti sinchronizavimo nustatymus ir BP bazės veikimo parinktis. Dėl to, kai konvertavau duomenų bazę į failo versiją, sistema veikė tinkamai: atsidarė dviejų duomenų bazių palyginimo forma. Suderinus objektus, pirminis sinchronizavimas buvo sėkmingas. Tada vėl perkėliau duomenų bazę į kliento-serverio versiją.

Toliau „vykstant“ sinchronizacijai, reikėjo šiek tiek pakeisti objektų konvertavimo taisykles. Atėjo laikas naudoti „Data Conversion 3.0“ konfigūraciją. Integruotame konfigūracijos žinyne aprašoma, kaip dirbti. Taip pat padėjo straipsniai ITS svetainėje.

Dėl to į „Data Conversion 3.0“ įkėliau šiuos duomenis:

  • Bendrojo modulio „Data Exchange Manager Via UniversalFormat“ tekstai iš dviejų bazių
  • Abiejų bazių schema
  • EnterpriseData formato aprašymas (iš bet kurios duomenų bazės)
  • Konversijos taisyklės

Atsisiuntę atidariau duomenų, objektų, savybių konvertavimo taisykles „Data Conversion 3.0“. Padariau pakeitimus, kurių man reikėjo. Tada naudojau mygtuką „Iškrauti mainų tvarkyklės modulį“. Modulio tekstas buvo nukopijuotas į mainų sritį. Belieka tik įterpti jį į konfigūraciją.

Eksperimentavęs su taisyklių nustatymu „Data Conversion 3.0“, padariau išvadą, kad tuo atveju, kai atlikti pakeitimai yra nedideli, taisykles lengviau nustatyti tiesiogiai UT ir BP konfigūracijose, bendrame modulyje „Duomenų mainai“. Valdytojas per „UniversalFormat“. Jei pakeitimai yra rimti, pavyzdžiui, mainais pridedamas naujas objektas, turėtumėte naudoti konfigūraciją " Duomenų konvertavimas 3.0".

Dokumento „Užsakymas tiekėjui“ įtraukimo į mainų planą užduotį atlikau naudodamas „ Duomenų konvertavimas 3.0". Standartinėje UT - BP versijoje šis dokumentas neįtrauktas į mainų planą.

Prisiminkime, kad objektų registravimo iškrovimui taisyklės vis dar sukonfigūruotos „Duomenų konvertavimo 2.0“ konfigūracijoje.

Tai pirmieji įspūdžiai apie duomenų sinchronizavimą universaliu EnterpriseData formatu.

P.S. Jei turite klausimų ir savo pastabų dėl duomenų mainų naudojant universalų formatą ir konfigūracijas " Duomenų konvertavimas 3.0", rašykite komentaruose. Pasikeisime patirtimi.

  • Duomenų sinchronizavimas
  • Universalus EntepriseData formatas
  • Duomenų konvertavimas 3.0
  • Duomenų konvertavimas 2.0
  • Prekybos valdymas
  • Įmonės apskaita

Tikriausiai kiekvienas 1C 8.3 programuotojas anksčiau ar vėliau turėjo nustatyti tam tikrų užduočių vykdymą pagal grafiką. Žemiau pateiksiu išsamų šių mechanizmų aprašymą, tikiuosi, kad tai bus naudinga informacija pradedantiesiems 1C programuotojams. Tai labai patogu, nes tai nereikalauja žmogaus veiksmų, suplanuota užduotis sukonfigūruojama vieną kartą ir veikia pagal jūsų grafiką.

Išsamias instrukcijas su pavyzdžiu rasite žemiau.

Kas yra suplanuotos ir foninės užduotys 1C

  • Suplanuotos užduotys yra specialus 1C įmonės 8.3 mechanizmas, skirtas atlikti konkretų veiksmą tam tikru grafiku.
  • Fono darbas- objektai, sukurti pagal suplanuotą užduotį, kuri tiesiogiai atlieka būdingą veiksmą nedalyvaujant vartotojui ar programuotojui 1C 8.2.

Suplanuotų ir foninių užduočių mechanizmas veikia kliento-serverio veikimo režimu (SQL), dėka DBVS funkcionalumo. Jei turite failų duomenų bazę, užduotį taip pat galima konfigūruoti, tačiau šiek tiek kitaip.

Foninių užduočių nustatymas kliento-serverio veikimo režimu 1C

Pirmiausia sukurkime naują metaduomenų objektą – suplanuotą užduotį. Savo užduotį pavadinsiu „Valiutų kursų įkėlimas“. Apsvarstykite šio konfigūracijos objekto savybių paletę:

Gaukite 267 1C vaizdo pamokas nemokamai:

  • Metodo pavadinimas— kelias į procedūrą, kuri bus vykdoma foninėje užduotyje pagal nurodytą tvarkaraštį. Procedūra turi būti bendrame modulyje. Rekomenduojama nenaudoti standartinių, o kurti savo. Nepamirškite, kad foninės užduotys vykdomos serveryje!
  • Naudojimas- suplanuotos užduoties naudojimo ženklas.
  • iš anksto nustatytas Nurodo, ar suplanuotas darbas yra iš anksto nustatytas. Jei norite, kad suplanuota užduotis veiktų iš karto po įtraukimo į duomenų bazę, nurodykite šią žymą. Kitu atveju turėsite naudoti „Job Console“ apdorojimą arba iškviesti užduotį, kad ji būtų paleista programiškai.
  • Pakartotinių bandymų skaičius užstrigus— kiek kartų foninė užduotis buvo paleista iš naujo, jei ji buvo atlikta su klaida.
  • Darbo nutraukimo kartojimo intervalas– kaip dažnai foninė užduotis bus paleista iš naujo, jei ji buvo atlikta su klaida.

Ir įdomiausia aplinka - Tvarkaraštis:

Čia galite nustatyti laukelyje „Metodo pavadinimas“ nurodytą procedūros pradžios intervalą. Leisk man nustatyti

Dėmesio! Nepamirškite išjungti suplanuotų ir foninių užduočių blokavimo DBVS lygiu!

Tai galima padaryti kliento-serverio versijos administravimo programoje arba kuriant naują duomenų bazę:

Suplanuotų užduočių nustatymas failo veikimo režimu 1C

Failų režimu tokių užduočių nustatymas yra šiek tiek sunkesnis. Norint atlikti tokią užduotį, turi būti paleista atskira 1C programos sesija. Dažnai tai išsprendžia „techninio“ vartotojo institucija, kurios sesija visada veikia.

Failo režimu suplanuotos užduoties inicijavimas įvyksta, kai paleidžiamas metodas "ExecuteJobProcessing()".

Konkrečiam vartotojui galima sukonfigūruoti šį metodą, kad jis būtų paleistas naudojant kitą metodą −

ConnectWaitingHandler( <ИмяПроцедуры>, <Интервал>, <Однократно>).

  • Procedūros pavadinimas— procedūros, prijungtos kaip laukimo tvarkytojas, pavadinimas. Valdomos programos modulio (įprastos programos modulio) arba visuotinio bendrinamo modulio eksportuotos procedūros pavadinimas. Procedūra turi būti nurodyta kliente.
  • Intervalas— laikotarpis tarp operacijų vykdymo sekundėmis.
  • kartą- kaip atlikti užduotį vieną kartą ar ne.

ConnectWaitingHandler, 3600 );

Dviejų minučių vaizdo įrašas, kuriame parodyta, kaip nustatyti suplanuotą užduotį 1C konfigūratoriuje:



Turite klausimų?

Pranešti apie rašybos klaidą

Tekstas siunčiamas mūsų redaktoriams: