Meny
Är gratis
checka in
Hem  /  Multimedia / Regulatoriska och bakgrundsuppgifter 1c 8.3. Universell reglerande uppgift

Regulatoriska och bakgrundsuppgifter 1c 8.3. Universell reglerande uppgift

När du arbetar i 1C finns det många rutinmässiga operationer som måste lanseras eller att bilda i schema som utför detta eller den åtgärden, till exempel: Genomföra dokument eller databelastning i 1C från webbplatsen.

Jag skrev nyligen en artikel: Det är dags att automatisera det:

Regler och bakgrundsuppgifter

Uppgiftsmekanismen är utformad för att utföra någon tillämpad eller funktionalitet på ett schema eller asynkront.

Uppgiftsmekanismen löser följande uppgifter:

  • Förmågan att definiera regleringsförfaranden vid systemkonfigurationsfasen;
  • Utförande av specificerade åtgärder på ett schema
  • Utföra ett samtal för ett visst procedur eller asynkront funktion, d.v.s. utan att vänta på dess slutförande
  • Spåra framstegen i en viss uppgift och få sin färdigställande status (värden som anger framgången eller inte framgångsrikt implementering).
  • Ta emot en lista över aktuella uppgifter
  • Förmåga att vänta på slutförandet av en eller flera uppgifter
  • Jobbhantering (förmåga att avbryta, låsa utförandet, etc.).

Uppgiftsmekanismen består av följande komponenter:

  • Metadata av reglerande uppgifter;
  • Reglerande uppgifter;
  • Bakgrundsuppgifter;
  • Jobbplanerare.

Bakgrundsuppgifter och är utformade för att utföra tillämpade uppgifter asynkront. Bakgrundsuppgifterna implementeras av det inbyggda språket.

Regler "Uppgifter och är utformade för att utföra tillämpade schemauppgifter. Regulatoriska uppgifter lagras i informationsbasen och skapas på grundval av metadata som definieras i konfigurationen. Metadata i den reglerande uppgiften innehåller sådan information som namn, metod, användning, etc.

Den reglerande uppgiften har ett schema som bestämmer vilka tidsmoment som måste utföras med den metod som är förknippad med den reglerande uppgiften. Schemat är vanligtvis inställd i informationsbasen, men kan också anges i konfigurationssteget (till exempel för fördefinierade regleringsuppgifter).

Uppgiftschemaläggaren används för att planera utförandet av regleringsuppgifter. För varje regleringsuppgift kontrollerar planeraren periodiskt om det aktuella datumet och tiden för schemat för den reglerande uppgiften är sant. Om det matchar, tilldelar schemaläggaren en sådan uppgift att utföra. För att göra detta, enligt denna reglerande uppgift, skapar planeraren en bakgrundsuppgift som utför riktig bearbetning.

Med beskrivningen tror jag tillräckligt - jag kommer att fortsätta att genomföra:

Skapa en reglerande uppgift

Metodnamn - Banan till förfarandet som kommer att utföras i bakgrundsuppgiften på ett visst schema. Förfarandet måste vara i den övergripande modulen. Det rekommenderas att inte använda typiska vanliga moduler, men skapa din egen. Glöm inte att bakgrundsuppgifter Exekverad på servern!

Använder sig av - Ett tecken på att använda en reglerande uppgift.

Fördefinierad- Indikerar om den reglerande uppgiften är fördefinierad.

Om du vill arbeta som en reglerande uppgift omedelbart efter rummet i databasen, ange ett tecken Fördefinierad. Annars måste du använda uppgiftskonsolen bearbeta eller ringa uppgiften att starta programmatiskt.

Antal repetitioner vid nödsituation - Hur många gånger har du omstart av bakgrundsjobbet, om det utfördes med ett fel.

Upprepa intervallet när ett olycksfel - Vilken frekventhet kommer att konfigureras för att starta om bakgrundsuppgiften om den utfördes med ett fel.

Ställa in schemat

schema Uppgift prestanda:

Varje timme, bara en dagPeriodStoistnee \u003d 0, Periodstravteraneedydee \u003d 3600
Varje dag en gång om dagenPeriodStoistnee \u003d 1, PeriodStRavterAneedNya \u003d 0
En dag, en gångPeriodStrans: 0.
Varannan dag en gång om dagenPerioderoter \u003d 2.
Varje timme från 01.00 till 07.00 varje dagPeriodStoistnee \u003d 1PERIODHONThe Showroom \u003d 3600 Pulled \u003d 01.00

Tid confer \u003d 07.00

Varje lördag och söndag kl 09.00PeriodStoistnes \u003d 1DNNNEDHELI \u003d 6, 7 PULLED \u003d 09.00
Varje dag en vecka, Weekmission WeekPeriodStrans: 1 period \u003d 2
Klockan 01.00 en gångTid \u003d 01.00
Det sista antalet varje månad klockan 9:00.PeriodStoistnee \u003d 1 deniye \u003d -1 dras \u003d 09.00
Femte antalet varje månad klockan 9:00PeriodStoistnee \u003d 1 Deniye \u003d 5 Pulled \u003d 09.00
Den andra miljön i varje månad klockan 9:00PeriodStoistnee \u003d 1DenteliyVyza \u003d 2DNNNYED \u003d 3

TOP \u003d 09.00

Funktioner för utförande av bakgrundsuppgifter Fil och klient-serverversioner

Mekanismer för att utföra bakgrundsuppgifter i fil- och klientservervarianter skiljer sig åt.

I filversionen Det är nödvändigt att skapa en vald klientprocess som gör utförandet av bakgrundsuppgifter. För att göra detta, i klientprocessen, bör funktionen för den globala konfigurationskontextans funktionen vara upptagen. Endast en klientprocess på informationsbasen måste utföra behandlingen av bakgrundsuppgifter (och följaktligen orsak denna funktion). Om klientprocessen inte är skapad för bearbetning av bakgrundsuppgifter, kommer uppgiftshanteraren att utfärdas till arbetsmekanismen. Klientprocessen som utför behandlingen av bakgrundsuppgifter rekommenderas inte för andra funktioner.

När klientprocessen utför behandlingen av bakgrundsuppgifter lanseras, får de återstående klientprocesserna möjlighet programvaruåtkomst till mekanismen för bakgrundsuppgifter, d.v.s. Kan köra och hantera bakgrundsuppgifter.

I klient-serverversionen För att utföra bakgrundsuppgifter används en uppgiftschemaläggare, vilket är fysiskt i klusterhanteraren. Schemaläggaren för alla bakgrundsuppgifter som tilldelats att utföra bakgrundsuppgifterna får det minst laddade arbetsflödet och använder den för att utföra lämplig bakgrundsuppgift. Arbetsflödet är uppdraget och meddelar schemaläggaren om resultaten av utförandet.

Klient-serverversionen har möjlighet att blockera utförandet av regleringsuppgifter. Blockering av utförandet av reglerande uppgifter uppstår i följande fall:

  • Informationsbasen har en tydlig blockering av regleringsuppgifter. Lås kan installeras via klusterkonsolen;
  • Informationsdatabasen är inställd på att blockera anslutningen. Lås kan installeras via klusterkonsolen;
  • Från det inbyggda språket kallas metoden för att ställa in monopulär () med sanningsparametern;
  • I vissa andra fall (till exempel, vid uppdatering av databaskonfigurationen).

Start och visning av regler för regleringsuppgifter Du kan ladda ner här.

" I det kommer vi att titta på nya funktioner som inte berör systemgränssnittet, men utökar avsevärt den medföljande funktionaliteten för plattformen "1C: Enterprise 8".

Tillämplighet

Artikeln diskuterar plattformen "1c: Enterprise" version 8.3.4.437. All den funktionalitet som beskrivs i artikeln uppdateras till redaktionskontoret 8.3.11.

Övriga innovationer i "1c: Enterprise 8.3"

Vi kommer att fortsätta att bekanta sig med innovationerna för 1C: Enterprise 8.3-plattformen.

Bakgrunds- och regleringsuppgifter i filinformationsbasen

I många typiska plattformskonfigurationer 8.2 Det var en konstant där användaren specificerades under vilken uppgifter utfördes i filen.

När systemet startas, har förväntningshanteraren under den här användaren inträffat, vilket för en viss periodicitet orsakade den inbäddade språkmetoden. PerformingPackets ().

Ett sådant tillvägagångssätt skapade ytterligare svårigheter och olägenheter att använda regleringsuppgifter i fildatabasen.

Det kan vara särskilt kritiskt när man arbetar med sådana konfigurationer som "Komplexautomatisering" eller "Hantera produktionsföretag"Där de reglerande uppgifterna spelar en ganska viktig roll.

Om det är filib då
=
Konstanter. Vanligtvis full-planete woversvariant. Fokus();
Om en glnagevened("Glotting user") =
KundklippSedan
// i intervallet av sekunder, ring proceduren för att arbeta med regleringsuppgifter
SupportedLentylentyFyle fileveession();
Intervalltrack=
Konstanter. IntervalenLasProsarlamentadnayataniyVifyLevarisa. Häll();
Om en Intervalltrack\u003d Osäker
ELLER Intervalltrack\u003d 0 då
Intervalltrack= 60 ;
Slutade;
Connectographicing("SupportedLamedadantedLamefilevation",
Intervalltrack);
Slutade;
Slutade;

I plattformen 8.3 Arbetet med bakgrunds- och regleringsuppgifter i filinformationsdatabasen är implementerad utan att använda den globala kontextmetoden PerformingPackets ().

Bakgrunds- och regleringsuppgifter utförs direkt i en av klientprogrammen (tunn, tjock klient) eller webbserverns förlängning.

Bakgrundsuppgiften som drivs av någon session utförs av samma klientprogram som initierade den.

Bakgrundsuppgifter utförs sekventiellt, d.v.s. På en klientansökan vid en tidpunkt kan endast en bakgrundsuppgift utföras (inklusive reglering).

Regulatoriska uppgifter utförs endast av en klientansökan. För att hantera starten av reglerande uppgifter är kommandoradsnyckeln avsedd. Tillåt executescheduledjobs..

Regulatoriska uppgifter utförs först för att starta klientansökan som inte förbjuder genomförandet av regleringsuppgifter (för förbudet mot sessionen måste lanseras med kommandoradsparametern Tillåtexecutescheduledjobs -Off.).

När den här sessionen är klar fortsätter körningen till någon av de återstående sessionerna.

Om klientprogramsträngen uttryckligen indikerar behovet av att starta regleringsuppgifter (i kommandorad Specificerad Tillåtsexecutescheduledjobs -Force), Reglerande uppgifter börjar utföras på den, oavsett tillgängligheten av andra sessioner.

Bearbetningsreglerande uppgifter uppstår en gång var 60: e sekund.

Observera att regleringsuppgifter tillämpad lösning (I filen) började exekveras inte tidigare än 1 minut efter att klientprogrammet lanseras. Från och med utgåvan 8.3.8, den här tiden fördubblades, och därför börjar de reglerande uppgifterna göras till högst 2 minuter efter klientlanseringen (i filen).

Denna lösning beror på en minskning av fördröjningen när applikationen startar. Dessutom, i release 8.3.7, kan förmågan att snabbt bestämma att den aktuella sessionen är en bakgrundsuppgiftssession. Detta genomförs på bekostnad av den nya metoden för globalt sammanhang för att få teseansinformationsbas (), liksom en ny metod vid informationsbasperioden. OpenDfonevenation ().

Följande är koden som illustrerar det ovan beskrivna:

För att förstora, klicka på bilden.

Beräkning av kontroller

I plattformen verkade mekanismer beräkna kontrollbeloppet.

Minns att kontrollsumman (HASH) är ett visst värde beräknat av datasatsen med användning av en specifik algoritm och används för att verifiera integriteten hos data när de sänds eller lagras.

Hischai kan användas för att kontrollera informationens identitet (till exempel är det nödvändigt att se till att det inte är skadat vid överföring av filen. Kontrollera om det var ändringar i filen och i så fall ladda den till databasen igen).

För att göra detta implementerades ett objekt i plattformen ChechirovatedFinns på servern i en tjock klient, externa anslutningar, såväl som på en mobilapplikationsserver.

Detta objekt har två metoder: Lägg till () och Lägg till fil()Vem uppdaterar hash summan med de data som sänds i parametrarna.

Plattform 8.3.4.437 Stödjer beräkningen av följande hashfunktioner: CRC32., Md5, Sha1, Sha256.. Men funktioner Sha1och Sha256.stöds inte på en mobil plattform.

Tänk på ett enkelt exempel. Det antas att på servern i programkatalogen finns en fil " ragent.exe.". Det är nödvändigt att beräkna Md5-Summera för den här filen.

För att göra detta, skapa extern bearbetning, på vilken form som kommer att placeras Beräkna. Handlaren innehåller följande kod:

& Svalette
Beräkna procedur (kommando)
Resultat \u003d. Beräkna servern();
Rapport (sträng (resultat));
Extruderess
& På server
Fungera Beräkna servern()
Hash \u003d ny Chechirovated(.Md5 hashfunction);
Hash.daddlindile(Katalogprogram() + "Ragent.exe");
Returnera heshe.hesumum;
Slutfunktion

I redaktionell plattform 8.3.10+ i metoden Lägg till () Objekt Chechirovated Det blev möjligt att använda strömmen av binära data, vilket väsentligt förenklade deras användning för att lösa olika ansökningsuppgifter för att uppdatera hash-summor.

Arbeta med säkra versioner av protokoll SMTP / POP3.

I plattformen 8.3 Det finns ett tillfälle att använda skyddade versioner av protokoll. SMTP / POP3. (Villkor hittas SMTPS / POP3S. eller SSLSMTP / SSLPOP3.).

För objekt Internetpootpofil Nya fastigheter implementerade:

  • Usesslsmtp;
  • Usesslpop3;
  • EnaMautentificationsMTP;
  • EnaMautentificationPop3.

Egenskaper AutenticationsMTP.och AutentiseringPop3.objekt Internetpootpofilsåväl som enumerationer PodsmtpAutentificationoch Popop3anauthentificationanvänd det rekommenderas inte - de stöds för kompatibilitet.

Med ett säkert protokoll SMTPS.gör det möjligt att skicka mail från 1c.Använder sig av brevlåda Google.

Tänk på ett exempel. På formuläret har vi ett fält för att komma in i ämnet i brevet och mottagarens adress och att ange texten i brevet - fältet för det formaterade dokumentet.

För att förstora, klicka på bilden.

Om du trycker på knappen Skickaföljande kod kommer att utföras:

& Svalette
Förfarande Skicka (kommando) Mail \u003d ny online pub; Profil \u003d ny Internetpootpofil;
Profil. Pressresersmtp.\u003d "Smtp.googlemail.com";
Profil. AnvändareMTP.= “[E-post skyddad]” ;
Profil. Pallsmtp.\u003d "Lösenord";
Profil. Usesslsmtp\u003d Sanning;
Profil. Portsmtp \u003d 465; Försök
Post. Konferens(Profil);
Ett undantag
Rapportbeskrivning ());
Återbetalning;
Firande; Postinformantexter= “” ;
Bilagor \u003d Ny struktur;
Text.chelchhtml(Postinformantexter, Bilagor); Postalisering\u003d Ny Internet puberteten;
Postalisering. Utövare. Lägg till(Till vem);
Postalisering\u003d Ämne;
Postalisering. Vita. Lägg till(Postinformantexter,
Tytextapochetovop.html.); Mailadress ( Postalisering); Post. Följ();
Extruderess

Observera att i vårt exempel om SMTP-servern inte kunde skicka elektroniskt meddelande adressat (-am), sedan metod Post. Skicka (postkommunikation) genererade ett undantag. Detta orsakade vissa olägenheter från utvecklare, för Anledningen till generationen av undantag var inte uppenbart.

I redaktionen 8.3.9 har detta beteende förändrats, och nu returnerar sändningsmetoden () efterlevnaden, vars nyckel är adressaten och värdet - diagnos från mejl server. Detta gör att du kan noggrant bestämma orsakerna till det misslyckade e-postmeddelandet till var och en av adressaten. I kompatibilitetsläge med version 8.3.8 har beteendet inte förändrats.

Dubbelsidig utskrift

I plattformen 8.2 Platformen själv hanterade inte den dubbelsidiga tätningen, det var möjligt att hantera den här funktionen endast med skrivardrivrutinen.

I plattformen 8.3 Möjligheten att kontrollera bilateral försegling för ett tabelldokument, ett grafiskt schema (från det inbyggda språket och interaktivt) och textdokument (Endast interaktivt).

På det inbäddade språket visade sig systemförteckningar:

  • Typid mjukmedel(Nej, dvorsop, doraved);
  • (Auto, spegelkraft, spegelplatta, förstå).

Och i föremål Timmeroch Grafikhemegenskaper visade sig Dubbelsidig utskriftoch Alternerande distributionstranitsaMed vilken du kan ändra platsen för de tryckta sidorna.

I plattformens redaktionella kontor 8.3.9, sattes en ny mening till systemlistan av tidylon Använd NastyPrinter. Val detta värde Tillåtet att använda skrivarinställningarna när du skriver ut systemdokument. I kompatibilitetsläge med version 8.3.8 har beteendet inte ändrats och motsvarande skrivarinställningar ignoreras.

Informpå webbservern är mer funktionell. Nu kan du publicera konfiguratorn att du ska ställa in alla filinställningar. default.vrd..

Till dialog som publicerar en webbklient och webbtjänster via konfiguratorn implementeras:

  • förmågan att hantera tillgängligheten av webbtjänster som standard (attribut pointenablecommon. Element ws.);
  • möjligheten att styra utförandet av bakgrundsuppgifter i filen (attribut tillåt executescheduledjobs. Element ws.).

Om flaggan "Publicera webbtjänster som standard" På fliken "Grundläggande" Installerad, vid uppdatering av publicering, kommer valda webbtjänster att publiceras automatiskt.

Annars kommer webbtjänster att märkas som obehagligt. Denna flagga matchar attributet pointenablecommon.element ws.i fil default.vrd.Utformad för att konfigurera webbklienten och webbtjänsterna.

Attribut pointenablecommon.wS-elementet är ansvarigt för möjligheten att använda webbtjänster i denna informationsbas, som publiceras utan tydlig användning av användningsbehörigheterna (attribut gör det möjligtelement punkt).

Om attributet är viktigt sann., då alla webbtjänster för vilka attributvärdet är tydligt inte specificerat. gör det möjligtelement punktkommer att tillåtas använda.

Annars är användningen av sådana webbtjänster att vara förbjuden.

Miljö "Bakgrundsuppgifter i filläge" motsvarar attributet tillåt executescheduledjobs.wS-element i filen default.vrd..

Attribut tillåt executescheduledjobs.hanterar förmågan att utföra regleringsuppgifter till webbserverens expansion för informationsbasfilen.

Attributet kan ta följande värden:

  • av- I det här fallet kommer webbservernsutvidgningen inte att utföra regleringsuppgifter. Att utföra regleringsuppgifter kommer att vara klientansökan (om någon), som ansluts direkt till informationsdatabasen utan att använda en webbserver.
  • tvinga- I det här fallet kommer webbservernsutvidgningen att utföra regleringsuppgifter.
    Om värdet av detta attribut inte anges, kommer de reglerande uppgifterna att utföra den ansökan med vilken den första anslutningen till informationsbasen ska utföras.

Publikationsfönstret på webbtjänsten i den aktuella utgåvan av plattformen har blivit ännu bekvämare och ergonomiska. Nu är parametrarna som beskriver OpenID-autentiseringen gjorda på en separat flik.

Numrering av informationsbasobjekt

I plattformen 8.3 Återvunnen mekanism automatisk numrering informationsbasobjekt. Övervakning av numret eller koden (inklusive numret eller koden som erhålls som ett resultat av automatisk generation) görs alltid under objektets inmatning.

Texten till den unika egenskapen av numret eller koden läggs till indikationen på vilket nummer eller kod som inte är unik.

Användningen av det befriade numret eller koden har ändrats. Det nya numret eller koden är tilldelad utan att använda de släppta siffrorna eller koderna, om det redan finns utfärdade nummer eller koder med ett stort (i ordning) prefix av numret eller koden.

Aggregat språk språk språk data layout system

På språket av uttryck för datasystemet implementeras nya aggregatfunktioner:

  • Alla();
  • Några();
  • Standard alternerande degenerering ();
  • Standardlonions varelser ();
  • Dispersionsutställning ();
  • Dispersionssensor ();
  • Kovariansbehållare ();
  • CoariarationSebors ();
  • Korrelation();
  • Regressionallon ();
  • Regressing ();
  • Regressionicism ();
  • Regressionr2 ();
  • Regressing formad ();
  • Regressande medelvärde ();
  • Regressing averagesxx ();
  • Regressande medelvärde ();
  • Regressing averagexy ().

Som det kan ses från namnen är det statistiska funktioner, det betyder att utvecklarna har möjlighet att skapa komplexa rapporter utan att tillgripa utvecklingen av förfaranden för beräkning av statistiska data.

För att förstora, klicka på bilden.

Som det kan ses i figuren finns det inga nya funktioner i rullgardinsmenyn, men om du manuellt kommer in, kommer felmeddelandet inte att vara, och rapporten kommer att bildas:

Det är också av intresse ny funktion ClassificationABC (). Resultatet av funktionen av funktionen kommer att vara klassnummer, från och med 1 (1 motsvarar klass A, 2 - klass B, 3 - klass C, etc.).

Vi kommer att visa arbetet med den här funktionen. Skapa en ny extern rapport "Klassificering av varor" Baserat på begäran:

VÄLJA
Costdranovanovari.thovar,
Costbarovanovari.colism
AV
Dokument. Källa. TASTERSSOM Costbatovaratovari

Bestäm det nya beräknade fältet Klass:

För att förstora, klicka på bilden.

Vi kommer att konfigurera resurser enligt följande:

För att förstora, klicka på bilden.

I användarläge ser rapporten ut så här:

Sammanfattningsvis noterar vi att från redaktionen på 1C 8.3-plattformen 8.3, är SCD-mekanismen ständigt förbättrad och förfinad, och inom vår "nykomling" är artikel dataändringar inte möjliga. Ja, det verkar onödigt, för att arbeta på verklig version Plattformar, du kan alltid utnyttja olika referenssystem för att hjälpa till med analysen av en viss aspekt av den här mekanismens funktion.

Dessutom, glöm inte vår separata kurs, den professionella utvecklingen av rapporter i 1C 8.3 på datasystemet, som tar över alla subtiliteter och ställer till atomen när du arbetar med den här mekanismen. Titta på demo själv och.

Så, låt oss sammanfatta resultaten. Fram till den här tiden bekanta oss med de nya funktionerna i "taxi" -gränssnittet och förvaltningsformulär, såväl som med några tidigare angivna förmågor hos plattformen själv. Nu är det dags att se vad bekväma möjligheter Utvecklaren i konfiguratorn har blivit tillgänglig.

Ofta, vid registrering, är det nödvändigt att regelbundet utföra vissa åtgärder utan användarintervention. Regulatoriska och bakgrundsuppgifter i 1C - de mekanismer som tillhandahålls för detta ändamål i den åttonde versionen av programmet och tillåter:

  • Ställ in aktuell primeration av dokument;
  • Beräkna resterna och resultaten;
  • Se till att frekvensen för postlistan
  • Kontrollera och ta bort irrelevanta data.

Bakgrunds- och reglerande uppgift - vad det är och var det är konfigurerat

Den reglerande uppgiften är mekanismen som läggs i 1C, vilket gör att du kan konfigurera och, i enlighet med den angivna och frekvensen, utföra en specifik sekvens av åtgärder.

Bakgrundsuppgiften är en åtgärd som genereras av regleringsverksamheten och inte kräver direkt användardeltagande.

Att skapa en reglerande uppgift uppstår i konfigurationsläge:

  • I fönstret Konfiguration träd hittar vi motsvarande gren (fig 1);
  • Klicka på knappen Lägg till;
  • I fönstret som öppnas måste du ange ett namn som låter dig identifiera ett objekt i konfigurationen;

Fig.2

  • Mittemot inskriptionen "Schema" (fig 2) finns det en inskription "öppen", klickar på vilken fönstret tidsinställningar och periodicitet öppnas (fig 3);

Fig. 3.

  • Du måste också fylla i "metodnamnet" (namnet på det förfarande som orsakas av den allmänna modulen och den beskrivande algoritmen för programmets beteende kommer att anges här;
  • Fälten "Namn" och "Key" tillåter dig att gruppera objekt;
  • "Användning" -flaggan indikerar aktiviteten i regelverket.
  • "Fördefinierad" ska installeras om hanteraren måste starta omedelbart efter det att den läggs till i databasen, annars kan lanseringen göras från motsvarande behandling (om det nedan);
  • Parametrarna "Antal repetitioner" och "intervallupprepningar" beskriver programmets beteende i händelse av en exceptionell situation när du utför en bakgrundsuppgift.

Så, med hjälp av mekanismen för reglering, kan du ställa in schemat och de viktigaste åtgärderna i bakgrundsuppgifterna. Låt oss nu överväga deras egenskaper.

Funktioner av bakgrundsuppgifter

Huvudfunktionen hos denna mekanism är att bakgrundsprocessen utförs asynkront.

Vad betyder det. Faktum är att med en synkron modell av arbete, i händelse av utförande, blockeras någon algoritm användargränssnitt. I vårt fall kan användaren fortsätta att ange och redigera data, även om proceduren körs. Den asynkrona programmeringsmodellen innefattar separation av beräkningsströmmar.

Således kan bakgrundsuppgifterna i 1C generera sina processer, fördela beräkningarna på olika servrar som kommer in i ett kluster.

Funktioner i arbetet i klient-server-läge

  • Exekvering och kontrollplanering utförs av schemaläggaren från serverns kluster;
  • Vid en utföringsförfrågan söker schemaläggaren efter arbetsflöden hos ett kluster med minimal belastning och distribuerar uppgifter till dem.
  • Varje process kan utföra flera parallella databehandling;
  • När uppgiften är mottagen är processen ansluten till basen och utför algoritmen i den;
  • Processen rapporterar planeringen om resultaten.

Bakgrundsuppgifter i filläget

Före den version av plattformen 8.3.3.641. Arbeta med bakgrundsuppgifter i filversionen representerade vissa svårigheter:

  1. Det var nödvändigt att starta en separat session, som skulle fungera dygnet runt och ersätta planeraren;
  2. Denna session skulle regelbundet genomföra exekveringsmetoden ().

Efter uppdatering, varje början av tjock och smala klienterI händelse av att i början av inställningarna (bild 4) i fältet "Tillägg" anges, initierar den tillåta en extra anslutningsström till databasen, som inte påverkar användaren att fungera, men utför endast bakgrundsverksamhet.

Fig.4

Man bör komma ihåg att även i filversionen av arbetet, tillåter bakgrundsprocesserna inte ett interaktivt arbete med användaren (officiella meddelanden, varningar, problem visas inte). Det är det som är nödvändigt att koda dem som om de kommer att utföras på sidan av servern.

Så här inaktiverar du reglerande uppgifter

Oanvända uppgifter kan vara inaktiverade, helt enkelt genom att ta bort kryssrutan till "Använd" i objektegenskaperna.

I det fall då administratören måste förbjuda användningen av reglerande och bakgrundsverksamhet för hela basen som helhet (till exempel, lagras den inte av flera databaser, varav endast en grundläggande, och resten används endast för utveckling) Det är nödvändigt att använda databasadministrationsverktyget. Du kan också installera "Installera blockering av föreskrifter" i databasen som skapats på servern.

Dessutom finns på sina skivor en speciell bearbetning av "Job Console", som låter dig redigera schemat bakgrundsprocesser Och ändra sin verksamhet.

Regulatoriska uppgifter i 1C är utformade för att utföra vissa förfaranden på ett schema, med viss frekvens.

Regulatoriska uppgifter lagras i informationsbasen, har ett startschema. Uppstarten själv utförs helt automatiskt om informationsbasen är klient-servern. Om basen är fil måste följande steg utföras:

  • tilldela en speciell användare för att utföra regleringsuppgifter;
  • basen ska öppnas under den här användaren, där funktionen regelbundet måste utföras Utför erkännande ().

Skapa en reglerande uppgift

Regulatoriska uppgifter - 1C Configuration Metadata-objekt. Beläget i den allmänna gruppen. Tänk på parametrarna och egenskaperna hos regleringsuppgifter.

Metodnamn- Banan till exportförfarandet i den övergripande modulen som kommer att utföras på ett visst schema. Förfarandet måste utföras på servern. I dessa reglerande uppgifter med något som liknar objektet Prenumerera på en händelse.

Nyckel - Gör det möjligt att skapa flera regleringsuppgifter av samma typ. Till exempel kan utförande av datasynkronisering mellan flera informationsbaser implementeras med ett Metadata-objekt. FörordningSamtidigt kommer flera (med antalet utbytesbaser) att skapas av de reglerande uppgifterna. Olika dessa reglerande uppgifter kommer att vara annorlunda Nyckel. Samtidigt kan endast en uppgift med samma nyckel utföras.

Använder sig av - Flaggan som visar huruvida den reglerande uppgiften är aktiverad.

Fördefinierad- Här kan du dra en analogi med fördefinierade element i referensboken. Fördefinierade element Skapat i konfiguratorn och gäller för användarna i drift. Konventionella användarelement skapar sig själv. Med de reglerande uppgifterna på samma sätt: Om det är förutbestämt, finns det och kan utföras på ett schema omedelbart efter att du skapat i konfiguratorn. Om flaggan Fördefinieradej installerad, användaren behöver skapa en eller flera regleringsuppgifter av denna typ (till exempel genom Uppgiftskonsol).

Antal repetitioner vid nödsituation - Bestämmer hur många gånger bakgrundsuppgiften startas om den har slutförts med ett fel.

Upprepa intervallet när ett olycksfel - bestämmer vilken frekvens som ska starta om bakgrundsuppgiften, om den har slutförts med ett fel.

Programvaruarbete med regleringsuppgifter

I dessa exempel kommer vi att överväga att arbeta med konventionella, inte förutbestämda, reglerande uppgifter.

Programvara skapande av en reglerande uppgift

// Skapa en uppgift
"MareliaMentation") ;

// Montera nyckeln till den reglerande uppgiften (inte nödvändig)
Uppgiften. Nyckel \u003d "nyckel ut";

// Slå på den reglerande uppgiften
Uppgiften. Använd \u003d sanning;

// Skriv en reglerande uppgift
Uppgiften. Skriv ner ();

Programvara som erhåller reglerande uppgift för att ändra parametrar

I det här exemplet antar vi att det bara finns en reglerande uppgift av denna typ. Om uppgifterna är flera, då vet det inte är svårt att ange motsvarande ändringar i koden.


"NameGellamentation"] ) ) ;


Om uppgifterna. Kvantitet ()\u003e 0 då
Uppgift \u003d Uppgifter [0];


Annat
Uppgift \u003d Regleringsapplikationer. CreatreementName ( "NameGellamentation") ;

Slutade;

// Regulatorisk uppgift är i en variabel uppgift. Du kan ändra parametrarna.

Ring dialog förändring schema för reglerande uppgift

Det finns en speciell typ av dialog att arbeta med schemat för reglerande uppgift. Vi antar fortfarande att vi bara har en reglerande uppgift av denna typ.

// få en matris med de önskade typens reglerande uppgifter
Uppgifter \u003d regleringsapplikationer. Operativa avgifter (ny struktur ("metadata", metadata. Regulatoriska tillämpningar [ "NameGellamentation"] ) ) ;

// om uppgiften existerar, då är det en
Om uppgifterna. Kvantitet ()\u003e 0 då
Uppgift \u003d Uppgifter [0];

// om uppgifterna inte, skapa det
Annat
Uppgift \u003d Regleringsapplikationer. CreatreementName ( "NameGellamentation") ;

Slutade;

Schema \u003d uppgift. Schema;

// Skapa en dialogruta för att ändra schemat för reglering
Dialogress \u003d ny dialografersparement (schema);

// visa användarens dialog och processschema ändras
Om dialogress. Openmodally () då
Uppgiften. Schema \u003d dialogress. Schema;
Uppgiften. Skriv ner ();
Slutade;

Ofta klagar användarna att "1C 8.3 saktar": formerna av dokument är långsamt öppna, dokumenten hålls länge, programmet lanseras, rapporterar och så vidare.

Dessutom kan sådana "glitches" inträffa i olika program:

Orsaker kan vara annorlunda. Detta återställs inte för att utföra dokument, en svag dator eller server, servern 1C är felaktigt konfigurerad.

I den här artikeln vill jag överväga en av de enklaste och vanligaste orsakerna till programmets långsamma arbete. Denna instruktion Det kommer att vara relevant för användare av fildatabaser med 1-2 användare, där det inte finns någon konkurrens om resurser.

Om du är intresserad av mer allvarlig optimering av klient-serverversioner av systemet, besök webbplatsen.

Var i 1c 8.3 pålitliga uppgifter

Jag hade inte tid att ladda upp ett program som i 1c många bakgrundsuppgifter. Du kan se dem genom att skriva in "Administration" -menyn, nedan - "Support och Service":

Få 267 Video Tutorials för 1C gratis:

Här ser det ut som ett fönster med de utförda uppgifterna:

Och så full lista Alla reglerande uppgifter som lanseras:

Bland dessa uppgifter, till exempel "", ladda ner olika klassificerare, kontrollera relevansen av versionen av programmet och så vidare. Till exempel har jag nästan alla dessa uppgifter. Jag utför inte redovisning av utländsk valuta, den versionskontroller själv, de klassificerade som behövs efter behov.

Följaktligen i mina (och i de flesta fall i ditt) intresse för att inaktivera onödiga uppgifter.

Inaktivera regelverk och bakgrundsuppgifter i 1C 8.3