Metoda objekta nije pronađena get elementi

Dobar dan svima!

Mnogi od nas se susreću sa softverskim proizvodima kompanije 1C u svojim aktivnostima. Štaviše, neki od nas ponekad čak moraju servis 1C proizvoda. Ponekad u ovom „divnom“ servisnom procesu dolazi do raznih incidenata. Danas ćemo pričati o jednom od njih.

Naime, tema ovog materijala: Kako popraviti grešku koja se javlja u 1C - Nije moguće povezati se s drugim programom: Metoda objekta nije pronađena (Poveži se).

Ako imate sreće da vidite istu grešku kao na ovom snimku ekrana, čitajte dalje da saznate kako je popraviti 😉

Malo uvodne teorije:

1C:Preduzeće 8.x pruža razne zanimljive mogućnosti za organizovanje razmene podataka sa drugim softverskim sistemima. Zajedno sa mehanizmom OLE Automation Uveden je i koncept COM veze, koji omogućava pouzdan i brži pristup podacima 1C:Enterprise 8.0 iz eksternih aplikacija koje podržavaju ovu tehnologiju.

Organizirati pristup podacima 1C:Enterprise 8.0 putem COM veza je kreirana COM objekat sa ličnom kartom V8.COMConnector, uz pomoć kojih se uspostavlja veza. Zatim se poziva metoda Connect prethodno kreiranog objekta V8.COMConnector. Način povezivanja vraća vezu na COM objekt veze sa info bazom 1C:Enterprise 8.0. A preko primljenog objekta COM veze pristupa se važećim metodama, svojstvima i objektima infobaze sa kojom je veza uspostavljena.

Sada, znajući odakle rastu noge, pređimo na vježbu. Recimo (tokom ažuriranja ili neke druge operacije) da ste dobili grešku poput:

Da biste popravili grešku koja se javlja u 1C - metoda objekta nije pronađena (povezivanje), morate učiniti sljedeće:

U najnovijim verzijama Windows operativnih sistema idite na „Usluge komponenti“. Ova funkcionalnost se poziva sljedećim nizom: Kontrolna tabla - Administracija - Usluge komponenti.

Odaberite: Računari – Moj računar – COM+ aplikacije – Kreirajte aplikaciju – Kreirajte novu aplikaciju – unesite naziv “V82COMConnector” (prekidač “Server aplikacija”) – Određeni korisnik (Administrator)

U niti koja se pojavi V82COMConnector– odaberite podgranu Komponente – kreirajte novu komponentu – Instalirajte nove komponente – \bin\comcntr.dll

Desni klik na granu V82COMConnector - Svojstva - Sigurnost - poništite izbor "Prisilna provjera pristupa za aplikacije" - potvrdite okvir "Primijeni politiku ograničenja softvera" - Nivo ograničenja "Neograničeno":

Također u korisničkim profilima C:\Users\OurUser\AppData\Roaming\1C\1CEStart.cfg promijenite parametar UseHWLicense=0 u UseHWLicense=1

Nakon svih ovih promjena, možete (radi čistoće eksperimenta) ponovo pokrenuti računar i uživati ​​u daljem radu u 1C, ali bez ove greške (!)

P.S. Mali bonus na kraju: 1C ažuriranje kao administrator

Često su neki od vaših udaljenih klijenata računovođe itd. - ne može samostalno ažurirati softverske proizvode 1C, potrebna su mu administratorska prava i ne želi ili se „boji“ desnim klikom na prečicu (i odabirom „Pokreni kao administrator“). Zato stalno nervira našeg brata informatičara.

Hajde da ga kliknemo desnim tasterom miša, ali uradi to jednom i zaboravi ovu temu zauvek!

Dakle, izvršimo jednokratno podešavanje - kliknite desnim tasterom miša na prečicu za pokretanje 1C, odaberite "Svojstva", kliknite "Promijeni postavke za sve korisnike" i označite okvir "Pokreni ovaj program kao administrator". Zatim nekoliko puta kliknite OK i zaboravite na "ustrašivog" klijenta 😉

Nadam se da ste ovdje uspjeli pronaći neke korisne informacije za sebe. Napišite u komentarima svoje „trikove“ - zajedno ćemo donijeti obrazovne prednosti.

Zbogom i sve najbolje! 😉

Svi znaju da bilo koji softver s vremena na vrijeme može dati razne kvarove ili, jednostavno rečeno, ne raditi kako treba. Takvi kvarovi koji dovode do poremećaja pravilnog funkcionisanja sistema nazivaju se greške. Program 1c je softverski proizvod (softver), stoga se u ovom programu mogu pojaviti i razne greške koje dovode do nepravilnog rada sistema. može biti vrlo raznolika, a ako nemate niz posebnih znanja iz oblasti programiranja i specifičnosti internih mehanizama 1C, tada nećete moći ispravno razumjeti i dijagnosticirati grešku, a još manje je ispraviti. Svaki od naših 1c programera je uvijek spreman pomoći u rješavanju bilo kakvih problema vezanih za 1s greške!

Šta uzrokuje greške u bazi podataka 1C?

Hajdemo sada malo o tome zašto se razne stvari mogu dogoditi. greške u bazi podataka 1s kada radite sa programom. Zapravo, može biti mnogo razloga i svi mogu imati potpuno različite razloge. Pa ipak, pokušat ćemo općenito razumjeti razloge za pojavu raznih greške u 1s.

Vrste grešaka u bazi podataka 1C

Greške u 1s Može postojati velika raznolikost i mogu se desiti iz raznih razloga. U ovom članku nećemo razmatrati sve moguće greške 1c; pokušat ćemo istaknuti takozvane glavne „vrste“ grešaka na koje se nailazi. Uobičajeno ih nazivamo „tipovima“ jer je sadržaj greške koju vam program pokazuje obično uvijek drugačiji, ali je suština često ista. Dakle, hajde da istaknemo one najčešće greške u bazi podataka 1s:

  1. Greška u formatu prijenosa
  2. Polje objekta nije pronađeno
  3. Metoda objekta nije pronađena
  4. Nema dovoljno memorije
  5. Greške vezane za SQL tabele (relevantne za 1C servere koji rade na relacionim bazama podataka, kao što je MySQL)
  6. Greška pristupa 1s

Greška u formatu prijenosa za 1 s

Greška u formatu toka 1s

Polje objekta nije pronađeno

Polje objekta nije pronađeno

Indeks je izvan granica niza

Greška 1c

Greška u formatu prijenosa za 1 s

Ova greška se vrlo često javlja kada se niz naredbi greškom pročita iz bajtkoda u toku, zbog čega se naziva Greška u formatu toka 1s. Svaka transakcija će biti prekinuta ako se ova greška pojavi kao rezultat njenog izvršenja. Takve greške zahtijevaju hitnu ispravku jer mogu naštetiti radu sistema 1C Enterprise. Ove greške mogu ispraviti samo kvalifikovani 1c programeri.

Polje objekta nije pronađeno

Ako vam 1c sistem da poruku o grešci sa tekstom " Polje objekta nije pronađeno", to znači da se greška javlja u situaciji kada program pokuša pristupiti atributu (polju) objekta koji jednostavno ne postoji. Ova greška ima prirodu "greške u radu" ako se pojavi u 1C Enterprise. Greške ove vrste takođe mogu biti ispravljeni samo programeri.

Indeks je izvan granica niza

Niz u programiranju je određena memorijska oblast u kojoj je pohranjeno mnogo objekata istog tipa (u 1c takvi tipovi mogu biti, na primjer, DirectoryLink, DocumentObject, itd., kao i bilo koji primitivni tipovi kao što su broj, string, Boolean , itd.). Greška 1c povezano s prelaskom izvan granica niza događa se upravo kada program pristupi granicama memorije koja je dodijeljena za niz. Shodno tome, program u ovom slučaju generiše grešku i obaveštava korisnika (programera) da se dešava pristup van niza, a to je softverska greška.

Metoda objekta nije pronađena

Slična greška se javlja kada sistem pokuša da pristupi metodi (funkciji) objekta čiji opis ne postoji u kodu. Greške ovog tipa mogu ispraviti programeri.

Nema dovoljno memorije za 1s

Ova greška nastaje ako sistemu ponestane sve RAM memorije dodeljene za potrebe izvršavanja programa u operativnom sistemu, zbog čega program generiše grešku " Nema dovoljno memorije za 1s". Može se desiti tokom raznih događaja kao što su ažuriranje konfiguracije, obrada velikog fajla, prilikom generisanja izveštaja, učitavanja velike baze podataka, itd. Korisnik može sam pokušati da ispravi takvu grešku.

Moguća ispravka za grešku 1c "Nema dovoljno memorije"

Greška leži u ograničenoj alokaciji adresne memorije od strane operativnog sistema za softver (softver).
Zadana ograničenja memorije adrese su:

  • za 32-bitni sistem – 2GB
  • za 64 bit – 4 GB

Da biste povećali veličinu adresne memorije potrebno je da uradite sledeće:

  1. Pokrenite komandnu liniju: “Start – Run” - upišite CMD i pritisnite enter
  2. Sada u komandnoj liniji unesite tekst bez navodnika “bcdedit /set povećanjeuserva 3072″, gdje je 3072 veličina memorije željene adrese
  3. Ponovo pokrenite operativni sistem (računar)
  4. Pokušajte izvršiti tu radnju u 1C koja prije nije radila i dovela je do greške.
  5. Ako je sve ispalo i operacija se ne ponavlja tako često, preporuča se vratiti veličinu adresne memorije na zadanu vrijednost pomoću naredbe “bcdedit /deletevalue povećauserva”

Greške vezane za SQL tabele

Greške ove vrste obično se javljaju na strani servera, kada sistem pristupa tabeli i ne može da pročita podatke. Ova greška može nastati zbog neispravne konfiguracije servera, kao i zbog oštećenja SQL tabela. U posebno teškim situacijama možda neće biti moguće čak ni vratiti bazu podataka, a tada vas može spasiti samo arhivirana kopija baze podataka. Preporučujemo da pravovremeno napravite rezervne kopije baze podataka.

Greška pristupa za 1s

Ova greška se javlja kada korisnik pokuša izvršiti radnju koja je zabranjena pravima pristupa (ulogama). Zbog toga sistem izdaje grešku pristupa od 1s. Uloge se konfigurišu u konfiguratoru od strane programera.

Niste mogli popraviti grešku za 1s?

Ako niste uspjeli ispraviti bilo koju grešku u 1C, ne očajavajte, podignite telefon i pozovite nas! Naši stručnjaci su uvijek spremni pomoći vam u rješavanju bilo kakvih problema vezanih za 1C, uključujući greške koje nastaju tokom rada sistema.

Vi (ili korisnik) radite u 1C. Odjednom - greška. sta da radim?

Naravno, najispravnije je analizirati šta je 1C greška, njene uzroke, potrošiti sat ili dva da saznate šta je šta.

Šta učiniti ako to nije moguće? Nema vremena, nema želje, nema dovoljno znanja. Evo nekoliko vrlo štetnih savjeta za brzo ispravljanje grešaka u 1C.

Poruka o grešci 1C

Tipičan tip 1C poruke o grešci je prozor sa tekstom 1C greške i dugmadima OK i Više.

Ovdje prikazani tekst 1C greške je korisnička poruka, koja programeru često ne znači ništa, jer prikazana 1C greška može biti rezultat nekih pogrešnih radnji.

Da biste ispravili 1C greške, morate kliknuti Više u ovom prozoru da biste vidjeli poruku o grešci programera 1C. U njemu se navodi:

  • , u kojem je došlo do 1C greške
  • Funkcija ovog modula u kojoj je došlo do greške 1C
  • Broj reda ovog modula u kojem je došlo do greške 1C.

Također možete kliknuti na tipku Konfigurator i tada će se otvoriti konfigurator, ovaj modul, ova funkcija na ovoj liniji, nakon čega možete ispraviti 1C grešku.

Trikovi za razumijevanje grešaka

Kao što je upravo rečeno, tekst greške 1C vrlo je često posljedica prethodno izvedenih pogrešnih radnji.

Na primjer, vrlo čest tekst 1C greške glasi:

Vrijednost nije vrijednost tipa objekta (WhatName)

Šta bi ovo značilo???

A to znači sljedeće:

  • Postoji varijabla
  • Program pretpostavlja da je vrijednost varijable direktorij ili dokument ili nešto slično - općenito ima detalje (polja)
  • Program pokušava pristupiti polju ovog objekta
  • Međutim, 1C greška je u tome što je iz nekog razloga u prethodnim redovima programa ova varijabla dobila vrijednost koja nema nikakvih detalja (polja), na primjer vrijednost "Nedefinirano".

Ispravljanje 1C grešaka koje su češće

Naravno, ne možemo uzeti u obzir sve greške koje trenutno mogu postojati u 1C.
Pokušajmo ukratko navesti 1C greške koje se često javljaju, kao i štetne savjete za brzo ispravljanje 1C grešaka.

  • Ako je varijabla tipa Boolean (to jest, prihvata vrijednosti True i False), tada joj se može pristupiti na sljedeći način:

    If VariableName Then

    Ovo pisanje je slično:
    Ako je Ime varijable = Tačno onda

    Međutim, ako iz nekog razloga ova varijabla poprimi ne-Booleovu vrijednost, tada će prva opcija dati 1C grešku, ali druga neće.

  • "Naziv funkcije XXX nije pronađen"

    Neki moduli se izvršavaju na serveru. Štaviše, neke funkcije istog modula mogu se izvršavati na serveru ili na klijentu.

    U ovom slučaju može doći do 1C greške da funkcija koja se izvodi na serveru poziva funkciju koja se izvodi na klijentu. U ovom slučaju će doći do takve 1C greške.

    Potrebno je premjestiti takvu funkciju na server, ako je moguće.

  • "Varijabla pod nazivom XXX nije pronađena"

    Slično prethodnoj grešci 1C. Ako program sadrži poziv funkcije koja se nalazi u zajedničkom modulu, onda to izgleda ovako:
    ModuleName.FunctionName();

    Ako je u svojstvima modula postavljeno da se izvršava na klijentu, a mi pristupamo iz onih linija programa koji se izvršavaju na serveru, tada će doći do 1C greške
    "Varijabla nije pronađena - ModuleName"

    Na sličan način je potrebno omogućiti izvršavanje ovog modula na serveru.

  • "Svojstvo XXX nije otkriveno na objektu"

    Riječ “Property” označava polje ovog objekta (atribut). potrebno:
    o Odredite o kakvom se objektu radi
    o Ako je ovo referentna knjiga, dokument, morate vidjeti da li se nekretnina zaista tako zove
    o Ako jeste ili – pogledajte detalje obrasca s tim imenom.

  • "Metoda Xxxx nije otkrivena na objektu"

    Riječ “metod” se odnosi na funkciju/proceduru u modulu ovog objekta.

    potrebno:
    o Odredite o kakvom se objektu radi
    o Pronađite njegov modul (modul objekta ako je 1C objekt, modul forme ako je obrazac)
    o Provjerite prisutnost funkcije s istim imenom.

  • “Greška 1C prilikom izvršavanja zahtjeva”

    To znači da postoji 1C greška u tekstu zahtjeva. Tekst zahtjeva se obično određuje u programu ranije (to jest, viši) nego što se izvršava. Potražite tekst upita u ovom modulu (očima iznad ili traženjem riječi “SELECT”).

    Pokušajte analizirati tekst zahtjeva ili desnim klikom na tekst zahtjeva i pokušajte otvoriti dizajner zahtjeva da dobijete savjet.

  • “Greška 1C izgleda” - prilikom pokretanja izvještaja

    Ova 1C greška znači ili 1C grešku u tekstu zahtjeva ili 1C grešku u postavkama ACS-a (često u grupama, u odabranim poljima, u uvjetnom formatiranju).

    Pokušajte započeti s postavkama, uvelike ih pojednostaviti. Provjerite da u odabranim poljima i uslovnom oblikovanju nema polja označenih križićem na listi.

    Ako ne pomogne, pokušajte da odete do tijela zahtjeva i koristite alat za izgradnju zahtjeva da dobijete savjet.

Članci na temu