Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • Interesant
  • Poate fi necesar să reinstalați o componentă sau accesorii.

Poate fi necesar să reinstalați o componentă sau accesorii.

În fața unei astfel de erori, la afișarea informațiilor pe un formular imprimabil, platforma afișează următorul mesaj:
A apărut o eroare la apelarea metodei context (CheckOutput)...

CheckOutput () este o metodă de documente de foi de calcul care verifică dacă documentele de foi de calcul transmise se potrivesc pe o pagină atunci când sunt imprimate. Într-o notă pentru această metodă, dezvoltatorii platformei 1C au scris imediat că, dacă apar probleme cu obținerea de informații despre imprimanta actuală (de exemplu, nu este instalată nicio imprimantă în sistem), se va ridica o excepție.

Am verificat imprimantele instalate, totul este bine și funcționează. Din punct de vedere empiric, am aflat că această eroare apare doar pentru o anumită formă de tipărire și doar sub un singur utilizator.

Eroarea a fost rezolvată prin următoarele acțiuni (executați sub utilizatorul care a avut eroarea):
1) Am creat un document gol, astfel încât metoda CheckOutput () să nu fie utilizată la generarea imprimabilului. Dacă această metodă este apelată în orice caz, atunci va trebui să o găsiți în configurație și să o comentați sau să o puneți în construcție Încercare-Eliminare-Sfârșit.
3) Pentru imprimabilul curent, am deschis parametrii paginii și am setat parametrii corecti.

3. Parametrii paginii
Eroarea a apărut din cauza setărilor incorecte ale paginii pe care platforma le salvase anterior la tipărirea unui formular tipărit, de exemplu: platforma a salvat o imprimantă în setările paginii, care a fost ulterior eliminată și a fost instalată una nouă. Parametrii de pagină ai formularului tipărit sunt stocați în proprietatea documentului tabelar KeyParameterPrint... Această proprietate conține o cheie de valoare care stochează setările de imprimare ale tabelului. Parametrii de imprimare configurați și salvați cu această cheie sunt ulterior restaurați la următoarea afișare a tabelului.

Pentru ca această eroare să nu apară din cauza parametrilor incorecți ai paginii, proprietatea KeyParameterPrint ar trebui setat nu la începutul procedurii de imprimare, ci la sfârșit, deoarece atunci când această proprietate este setată, parametrii de imprimare sunt imediat restaurați.

UPD 04.10.2015: Dacă setați proprietatea KeyParameterPrint la sfârșitul formării documentului tabelar, apoi metoda Verificați Concluzia va folosi setările implicite de imprimare, nu pe cele personalizate. Pentru a evita această situație, trebuie să setați proprietatea KeyParametersSystem la începutul formării unui document foaie de calcul și metoda Verificați Concluzia puneți în Attempt-Exception-EndTry.

Orice programator 1C a întâlnit un astfel de mesaj precum „A apărut o eroare la apelarea metodei context (Run)”. De obicei, această eroare nu este dificilă pentru un programator experimentat. De ce apare? Luați în considerare mai jos.

Ca în orice limbaj de programare, platforma 1C are metode predefinite care ușurează viața dezvoltatorilor. Dar executarea acestor comenzi necesită respectarea corectă a sintaxei limbajului de programare.

Cele mai frecvente greșeli la apelarea metodelor de tip:

  • Scrie
  • Crea
  • Conectați
  • Conectați
  • Verificați Concluzia
  • PrevizualizareFișier1C
  • Citit
  • A executa
  • RunPackage
  • ReadChanges

Să ne uităm la un exemplu. Am creat în mod programatic o solicitare () pasând următorul fragment la parametrii „text”:

Obțineți gratuit tutoriale video 267 1C:

În construcția „UNDE” am greșit în mod intenționat, punând „ȘI”, dar fără a mai scrie o condiție. Este destul de logic că 1C nu va putea face față unei astfel de solicitări și va da o eroare:

(SessionModule (21)): a apărut o eroare la apelarea metodei context (Run)

din cauza:

ȘI<>

Să luăm un alt exemplu:

Să transferăm codul eronat în handlerul „BeforeRecording” „Versiuni de program” și să încercăm să scriem cartea de referință în mod programatic. Vedem eroarea:

(SessionModule (8)): a apărut o eroare la apelarea metodei context (Write)
Fetch.GetObject (). Scriere ();
din cauza:
Eroare la executarea handlerului - „BeforeWrite”
din cauza:
(Reference.Programs.ObjectModule (20)): Eroare la apelarea metodei context (Run)
QueryResult = Query.Run ();
din cauza:
((13, 4)): Eroare de sintaxă
ȘI<>

În ciuda faptului că eroarea constă în executarea metodei „Run”, sistemul înjură și linia de cod în care este apelată înregistrarea programatică a obiectului.

Soluţie

Pentru a rezolva problema, este suficient să înțelegeți care este exact eroarea. În 99% din cazuri, problema este rezolvată printr-o lectură banală a ajutorului și analiza problemei.

Pentru a învăța cum să utilizați o anumită metodă, plasați cursorul pe funcția care vă interesează și apăsați „Ctrl + F1”. Platforma 1C vă va oferi un indiciu contextual pentru metoda necesară:

Verificați parametrii trecuți funcției și corectitudinea utilizării acesteia.

Erorile la utilizarea acestui sau acela program sunt de tot felul. Există o serie întreagă de ele - care apar din vina noastră. Să luăm în considerare cum să remediați o eroare la afișarea unei metode de context în 1C, care apare ca urmare a nerespectării regulilor și metodelor contextului.

Înțelegerea principiilor metodei context vă va ajuta să evitați greșelile atunci când lucrați în 1C.

Orice produs software constă din punct de vedere arhitectural din module (modul, engleză), părți. iar locația lor este prezentată în figură:

Modulele de program, la rândul lor, sunt împărțite în secțiuni:

Contextul este unul dintre cele mai importante concepte în programare. În 1C, înseamnă mediul modulului și secțiunile sale, - care variabile, proprietăți, obiecte, metodă (metodă) și evenimente îi pot fi disponibile în fiecare punct specific. În puncte diferite, contextul este de obicei diferit.

Dezvoltatorul (relucratorul) trebuie să înțeleagă ce proprietăți de context are punctul și ce metodă este disponibilă pentru utilizare în el.

În cele opt, vederile contextuale sunt evidențiate:


Există patru reguli de bază pentru accesarea procedurilor, variabilelor și funcțiilor din module:

  • Variabilele, procedurile și funcțiile aplicațiilor modulare nu vor fi disponibile pentru export în piese modulare comune;
  • Aplicațiile modulare au acces la procedurile de export și la funcțiile modulelor comune;
  • Pentru modurile generale. piese acces liber la exportul de proceduri și funcții ale altor module comune;
  • Pentru obiectele de aplicații modulare și pentru forme modulare, sunt disponibile variabile, funcții și rutine ale modulelor de aplicație pentru export și module generale.

Dacă un atribut principal este atribuit oricărei forme, atunci contextul acestui formular va conține proprietatea și metoda corespunzătoare acestui atribut principal. De exemplu, în modulul de formular pentru articolul catalog Nomenclature, sunt disponibile metoda și proprietățile obiectului CatalogObject.Nomenclature.

O ilustrare a regulilor date în diagramă:

Săgețile indică faptul că una dintre părțile modulare are posibilitatea altora de a-și accesa variabilele, funcțiile și procedurile pentru export. Ca o reamintire, nu există nicio declarație de variabilă în modulul comun.

Nerespectarea regulilor și practicilor contextului programatic

Toți programatorii au primit o notificare de eroare 1C când au apelat metoda contextului. Luați în considerare acest exemplu:

Erori de comandă

La crearea unei interogări în cartea de referință, următorul fragment a fost adăugat la parametrul său „text”:

În construcția „UNDE” a fost adăugat „ȘI”, dar condiția în sine a rămas nescrisă.

Reacția programului a fost următoarea:

(Mod de sesiune (21)): Eroare la apelarea metodei contextului (Run)
QueryResult = Query.Run ();

De unde știi metoda corectă?

Pentru a obține un indiciu de la platforma 1C despre cum să utilizați orice metodă, plasați cursorul pe funcția necesară și apăsați „Ctrl + F1”. Dacă apar erori, trebuie să verificați parametrii care sunt transferați funcției, precum și utilizarea corectă a funcției.

Ce este util de știut despre erori

În cele din urmă, vom efectua o analiză generală a erorilor din 1C. Oricare dintre ele poate fi motivul celor cărora le este dedicat subiectul articolului:

  • Încălcarea integrității atât logice, cât și fizice a bazei de informații;
  • erori ale utilizatorului la manipularea platformei;
  • Cod introdus incorect de către dezvoltator (extender);
  • Factorii umani – uitarea, de exemplu;
  • Situații de urgență (lipsă de lumină, viscol, ploaie, grindină, uragan, inundații).

Analizați eroarea:

  • Comparați versiunile de platformă și configurație;
  • Citiți textul integral al mesajului până la sfârșit, gândiți-vă puțin și înțelegeți ce a scris aparatul. De foarte multe ori oamenii nu citesc astfel de mesaje în întregime. Dar se întâmplă ca la sfârșitul acestuia să fie conținute recomandări pentru eliminarea lui;
  • Analizați câți ani are și circumstanțele apariției sale;
  • Este posibil să-l reproducă;
  • Erorile nereproductibile care nu au fost întâlnite anterior nu sunt de obicei remediate;
  • Indiferent dacă eroarea se repetă de pe alt computer sau de către alt utilizator. În acest caz, luați în considerare ștergerea memoriei cache, setarea drepturilor, ștergerea setărilor utilizatorului.

În plus, despre cauzele erorilor:

  • Unele erori sunt rezultatul utilizării de software fără licență (și, de asemenea, Windows);
  • O platformă deteriorată este cel mai comun exemplu. Doar un patch este capabil să spargă versiunea platformei. După aceea, este posibil să nu găsiți baza (sau licența);
  • În cazul întâlnirii inițiale cu o eroare, merită să căutați o soluție într-un motor de căutare - poate că o soluție a fost deja găsită de cineva;
  • Urmăriți relevanța versiunii de configurare (mai ales dacă raportarea reglementată este transmisă de la aceștia);
  • Relevanța lansării platformei - se recomandă o versiune specifică pentru fiecare configurație;
    Toate evenimentele care au loc în 1C sunt înregistrate în jurnalul tehnologic!
  • Înainte de a începe orice acțiune cu baza, trebuie să faceți o copie de arhivă!

Acum știți ce este un context, de ce apar erori asociate cu acesta, cum să analizați erorile în 1C și cum să le rezolvați.

Lasă feedback-ul tău în comentarii.

Top articole similare