Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ

Mund të jetë e nevojshme të riinstaloni një komponent ose pajisje shtesë.

Përballë një gabimi të tillë, kur shfaq informacionin në një formular të printueshëm, platforma shfaq mesazhin e mëposhtëm:
Ndodhi një gabim gjatë thirrjes së metodës së kontekstit (CheckOutput) ...

Check Output ()është një metodë e dokumentit të fletëllogaritjes që kontrollon nëse dokumentet e transmetuara të fletëllogaritës përshtaten në një faqe kur printohen. Në një shënim për këtë metodë, zhvilluesit e platformës 1C shkruan menjëherë se nëse lindin probleme me marrjen e informacionit në lidhje me printerin aktual (për shembull, asnjë printer nuk është i instaluar në sistem), do të ngrihet një përjashtim.

Kontrollova printerët e instaluar, gjithçka është në rregull dhe funksionon. Në mënyrë empirike, zbulova se ky gabim ndodh vetëm për një formë të veçantë printimi dhe vetëm nën një përdorues.

Gabimi u zgjidh me veprimet e mëposhtme (ekzekutoni nën përdoruesin që kishte gabim):
1) Krijoi një dokument bosh në mënyrë që metoda CheckOutput () të mos përdorej gjatë gjenerimit të printueshëm. Nëse kjo metodë quhet në çdo rast, atëherë do të duhet ta gjeni në konfigurim dhe ta komentoni atë, ose ta vendosni në konstruksion Përpjekje-Eleminim-Fund.
3) Për printimin aktual, hapa parametrat e faqes dhe vendosa parametrat e duhur.

3. Parametrat e faqes
Gabimi ndodhi për shkak të cilësimeve të gabuara të faqes që platforma kishte ruajtur më parë gjatë printimit të një formulari të printuar, për shembull: platforma ruajti një printer në cilësimet e faqes, i cili më vonë u hoq dhe u instalua një i ri. Parametrat e faqes së formularit të printuar ruhen në pronën e dokumentit të fletëllogaritjes KeyParameterPrint... Kjo veti përmban një çelës vlere që ruan cilësimet e printimit të tabelës. Parametrat e printimit të konfiguruara dhe të ruajtura me këtë çelës rikthehen më pas herën tjetër që të shfaqet tabela.

Në mënyrë që ky gabim të mos ndodhë për shkak të parametrave të gabuar të faqes, prona KeyParameterPrint duhet të vendoset jo në fillim të procedurës së printimit, por në fund, pasi kur vendoset kjo veti, parametrat e printimit rikthehen menjëherë.

UPD 04/10/2015: Nëse vendosni pronën KeyParameterPrint në fund të formimit të dokumentit të spreadsheet, pastaj metodën Kontrolloni përfundimin do të përdorë cilësimet e printimit të paracaktuar, jo ato të personalizuara. Për të shmangur këtë situatë, duhet të vendosni pronën Sistemi i parametrave kyç në fillim të formimit të një dokumenti spreadsheet, dhe metodën Kontrolloni përfundimin vendos në Përpjekje-Përjashtim-PërfundimTry.

Çdo programues 1C ka hasur në një mesazh të tillë si "Ndodhi një gabim gjatë thirrjes së metodës së kontekstit (Run)". Zakonisht ky gabim nuk është i vështirë për një programues me përvojë. Pse lind? Konsideroni më poshtë.

Si në çdo gjuhë programimi, platforma 1C ka metoda të paracaktuara që e bëjnë jetën më të lehtë për zhvilluesit. Por ekzekutimi i këtyre komandave kërkon respektimin e saktë të sintaksës së gjuhës së programimit.

Gabimet më të zakonshme kur thirrni metodat e tipit:

  • Shkruani
  • Krijo
  • Lidhu
  • Lidhu
  • Kontrolloni përfundimin
  • Parashikimi i File1C
  • Lexoni
  • Ekzekutoni
  • RunPackage
  • Lexoni Ndryshimet

Le të shohim një shembull. Ne krijuam në mënyrë programore një kërkesë () duke kaluar fragmentin e mëposhtëm në parametrat "tekst":

Merrni mësime video 267 1C falas:

Në konstruksionin "KU" gabuam qëllimisht, duke vënë "AND", por duke mos shkruar një kusht më shumë. Është mjaft logjike që 1C nuk do të jetë në gjendje të përballojë një kërkesë të tillë dhe do të japë një gabim:

(SessionModule (21)): Ndodhi një gabim gjatë thirrjes së metodës së kontekstit (Run)

për arsye të:

DHE<>

Le të marrim një shembull tjetër:

Le të transferojmë kodin e gabuar te mbajtësi i "Para Regjistrimit" "Versionet e programit" dhe të përpiqemi të shkruajmë librin e referencës në mënyrë programore. Ne shohim gabimin:

(SessionModule (8)): Ndodhi një gabim gjatë thirrjes së metodës së kontekstit (Write)
Fetch.GetObject () Shkruani ();
për arsye të:
Gabim gjatë ekzekutimit të mbajtësit - 'Para Write'
për arsye të:
(Reference.Programs.ObjectModule (20)): Gabim gjatë thirrjes së metodës së kontekstit (Run)
QueryResult = Query.Run ();
për arsye të:
((13, 4)): Gabim sintaksor
DHE<>

Pavarësisht se gabimi qëndron në ekzekutimin e metodës "Run", sistemi betohet edhe në linjën e kodit ku thirret regjistrimi programatik i objektit.

Zgjidhje

Për të zgjidhur problemin, mjafton të kuptoni se cili është saktësisht gabimi. Në 99% të rasteve, problemi zgjidhet me një lexim banal të ndihmës dhe analizës së problemit.

Për të mësuar se si të përdorni një metodë të caktuar, thjesht vendosni kursorin në funksionin që ju intereson dhe shtypni "Ctrl + F1". Platforma 1C do t'ju japë një sugjerim kontekstual për metodën e kërkuar:

Kontrolloni parametrat e kaluar në funksion dhe korrektësinë e përdorimit të tij.

Gabimet gjatë përdorimit të këtij apo atij programi janë të të gjitha llojeve. Ka një seri të tërë të tyre - që lindin për fajin tonë. Le të shqyrtojmë se si të rregullojmë një gabim kur shfaqim një metodë konteksti në 1C, e cila ndodh si rezultat i mosrespektimit të rregullave dhe metodave të kontekstit.

Kuptimi i parimeve të metodës së kontekstit do t'ju ndihmojë të shmangni gabimet kur punoni në 1C.

Çdo produkt softuerik arkitekturisht përbëhet nga module (module, anglisht), pjesë. dhe vendndodhja e tyre tregohet në figurë:

Modulet e programit, nga ana tjetër, ndahen në seksione:

Konteksti është një nga konceptet më të rëndësishme në programim. Në 1C, do të thotë mjedisi i modulit dhe seksionet e tij, - cilat variabla, veti, objekte, metoda (metoda) dhe ngjarje mund të jenë të disponueshme për të në çdo pikë specifike. Në pika të ndryshme, konteksti është zakonisht i ndryshëm.

Zhvilluesi (ripunuesi) duhet të kuptojë se cilat veçori të kontekstit ka pika dhe cila metodë është e disponueshme për t'u përdorur në të.

Në tetë, vërehen pikëpamjet kontekstuale:


Ekzistojnë katër rregulla bazë për qasjen në procedura, variabla dhe funksione në module:

  • Variablat, procedurat dhe funksionet e aplikacioneve modulare nuk do të jenë të disponueshme për eksport në pjesët e zakonshme modulare;
  • Aplikacionet modulare kanë akses në procedurat e eksportit dhe funksionet e moduleve të përbashkëta;
  • Për modalitetet e përgjithshme. pjesët hapin akses në eksportimin e procedurave dhe funksioneve të moduleve të tjera të përbashkëta;
  • Për objektet e aplikacioneve modulare dhe për format modulare, janë të disponueshme variabla, funksione dhe rutina të moduleve të aplikacionit për eksport dhe module të përgjithshme.

Nëse një atribut kryesor i caktohet ndonjë forme, atëherë konteksti i kësaj forme do të përmbajë vetinë dhe metodën që korrespondon me këtë atribut kryesor. Për shembull, në modulin e formularit për artikullin e katalogut Nomenklature, metoda dhe vetitë e objektit CatalogObject.Nomenklature janë të disponueshme.

Një ilustrim i rregullave të dhëna në diagram:

Shigjetat tregojnë se njërës prej pjesëve modulare i jepet mundësia të tjerëve të aksesojnë variablat, funksionet dhe procedurat e tyre për eksport. Si përkujtim, nuk ka asnjë deklaratë variabli në modulin e përbashkët.

Mosrespektimi i rregullave dhe praktikave të kontekstit programor

Të gjithë programuesit u takuan me një njoftim gabimi 1C kur thërrisnin metodën e kontekstit. Merrni parasysh këtë shembull:

Gabimet e komandës

Kur krijoni një pyetje në librin e referencës, fragmenti i mëposhtëm iu shtua parametrit "tekst" të tij:

Në konstruksionin "KU" u shtua "DHE", por vetë kushti mbeti i pashkruar.

Reagimi i programit ishte si më poshtë:

(Session MODS (21)): Gabim gjatë thirrjes së metodës së kontekstit (Run)
QueryResult = Query.Run ();

Si e dini metodën e duhur?

Për të marrë një sugjerim nga platforma 1C se si të përdorni ndonjë metodë, vendosni kursorin në funksionin e kërkuar dhe shtypni "Ctrl + F1". Nëse ndodhin gabime, duhet të kontrolloni parametrat që i kalohen funksionit, si dhe përdorimin e saktë të funksionit.

Çfarë është e dobishme të dini për gabimet

Më në fund, ne do të bëjmë një analizë të përgjithshme të gabimeve në 1C. Secili prej tyre mund të jetë arsyeja për ata që tema e artikullit i kushtohet:

  • Shkelja e integritetit logjik dhe fizik të bazës së informacionit;
  • Gabimet e përdoruesit gjatë trajtimit të platformës;
  • Kodi i futur gabimisht nga zhvilluesi (zgjeruesi);
  • Faktorët njerëzorë - harresa, për shembull;
  • Emergjenca (mungesë drite, stuhi, shi, breshër, uragan, përmbytje).

Analizoni gabimin:

  • Krahasoni versionet e platformës dhe konfigurimit;
  • Lexoni tekstin e plotë të mesazhit deri në fund, mendoni pak dhe kuptoni se çfarë ka shkruar makina. Shumë shpesh njerëzit nuk lexojnë mesazhe të tilla në tërësinë e tyre. Por ndodh që në fund të tij të përmbahen rekomandimet për eliminimin e tij;
  • Analizoni sa i vjetër është dhe rrethanat e paraqitjes së tij;
  • A është e mundur të riprodhohet;
  • Gabimet e riprodhueshme që nuk janë hasur më parë zakonisht nuk rregullohen;
  • Nëse gabimi përsëritet nga një kompjuter tjetër ose nga një përdorues tjetër. Në këtë rast, merrni parasysh pastrimin e cache-it, vendosjen e të drejtave, pastrimin e cilësimeve të përdoruesit.

Për më tepër, për shkaqet e gabimeve:

  • Disa gabime janë rezultat i përdorimit të softuerit të palicencuar (dhe gjithashtu Windows);
  • Një platformë e dëmtuar është shembulli më i zakonshëm. Vetëm një patch është në gjendje të prishë versionin e platformës. Pas kësaj, ju mund të mos gjeni bazën (ose licencën);
  • Në rast të takimit fillestar me një gabim, ia vlen të kërkoni një zgjidhje në një motor kërkimi - ndoshta një zgjidhje tashmë është gjetur nga dikush;
  • Mbani gjurmët e rëndësisë së lëshimit të konfigurimit (veçanërisht nëse raportimi i rregulluar paraqitet prej tyre);
  • Rëndësia e lëshimit të platformës - rekomandohet një lëshim specifik për çdo konfigurim;
    Të gjitha ngjarjet që ndodhin në 1C regjistrohen në regjistrin teknologjik!
  • Para se të filloni ndonjë veprim me bazën, duhet të bëni një kopje arkivore!

Tani e dini se çfarë është një kontekst, pse ndodhin gabime që lidhen me të, si të analizoni gabimet në 1C dhe si t'i zgjidhni ato.

Lini komentet tuaja në komente.

Artikujt kryesorë të lidhur