Soluții pentru problema pe exemplul tratamentului 1C: administrator.
Configurare: Retail 2.0. Client-Server. aplicație normală.
Eroarea se produce atunci când scrierea / transportarea documentului / OtmenaProvedeniya.
Încercarea de a transfera valori modificabile - o încercare de a transfera obiect la server (client), datele care pot fi schimbate pe client (server).
Mutabil încearcă să transfere valori de la client la server, de la server la 1C client: Enterprise are loc numai într-o versiune client-server (SQL).
Pase funcția parametrilor (procedură) executate pe server, mai degrabă întrebare subțire. Acest lucru se datorează în primul rând necesitatea de a le transfera între procesul de server și aplicațiile client. În controlul tranziției de pe partea de client la server toți parametrii de transfer sunt serializate, transmise la server, în cazul în care „dezarhivat“ și folosit. În tranziția de la partea de server la client - procesul invers. Trebuie remarcat faptul că acest sistem se ocupă în mod corect parametrii de transmisie a legăturii și semnificativ. La transmiterea, următorii parametri delimitând:
Transferul între client și server (în ambele direcții) este posibilă numai nemutabelnye valori (adică, a căror valori nu pot fi schimbate): tipuri primitive, link-ul, sistemul de colectare universal transferă valorile, valorile de stocare. Când încercați să transmită altceva - accidente aplicația client (chiar dacă transferul este opțiunea incorectă încearcă la server).
Nu este recomandat pentru transferul de parametri pentru a transfera cantități mari de date (de exemplu, un șir de mai mult de 1 milion de caractere), aceasta poate avea un impact negativ asupra performanței serverului.
Nu puteți trece parametrii care conțin o referință circulară. atât de la server la client și încercarea obratno.Pri pentru a trece un parametru - accidente aplicația client (chiar dacă parametrul încearcă să treacă un server incorect).
Nu se recomandă să transfere colectarea de date extrem de complex. Când încercați să treacă un parametru la un nivel foarte ridicat de investiții este un server de finalizare de urgență.
"Retail 2.0". Client-Server. aplicație normală.
Procesare "1C: Managerul": //infostart.ru/public/100967/
MO ::
Eroare la invocarea contextul metodei (înregistrare):
Eroare în timpul executării handler - „PeredZapisyu“ ::
Eroare la invocarea contextul metodei (DataIliOrganizatsiyaObektaIzmenena):
Incercarea de a transfera de la client la parametrul metodei 2a DataIliOrganizatsiyaObektaIzmenena server de valori modificabile ().
ObektIZM. Record (? (RezhimZapisi = nedefinita, RezhimZapisiDokumenta RezhimZapisi Recording) ..);
Procedura ProveritNomerObektaPoDateIOrganizatsii (Object)
MOD DECIZIE № 1: (o posibilă, dar nu a fost optimă):
Setarea proprietăților modul comun.
În Proprietăți ah ObschiyModul.PrefiksatsiyaObektov activați caseta „aplicație normală client.“
Procedura ProveritNomerObektaPoDateIOrganizatsii (Object)
Mod de decizie № 3: (o posibilă, dar nu și în acest caz):
UTILIZAREA XML-serializarea (propus w-divinului).
Serializare nu funcționează în cazul în care subiectul fiind înregistrate ca metadate avocat.
(Eroare la invocarea contextul metodei (ZapisatXML): Valorile acestui tip nu pot fi reprezentate în XML).
Se recomandă utilizarea unei entități de transmisie (SpravochnikObekt, DokumentObekt, etc.), dacă este necesar.
Utilizați tipul de funcție:
// Descarcarea HObekta în XML-string:
Funcția ZapisatVXML (HObekt)
ZapisXML = New ZapisXML; // Thin Client, Server, client de grăsime, o conexiune externă.
ZapisXML. UstanovitStroku ();
ZapisatXML (ZapisXML HObekt.); / Client / server gros, conexiunea externă.
Întoarcere ZapisXML. Închide ();
KonetsFunktsii
// Load HObekta XML-line:
Funcția ProchitatIzXML (StrokaXML)
ChtenieXML = New ChtenieXML; / / Thin client, un server, un client gros, conexiunea externă.
ChtenieXML. UstanovitStroku (StrokaXML);
HObekt = ProchitatXML (ChtenieXML); // client server gros, o conexiune externă.
Întoarcere HObekt;
KonetsFunktsii
în cazul UP pur și simplu nu va funcționa.
Greșit - lucrări - testate în mod repetat.
Nu funcționează. în SUS pe client nu este chiar obiectul în sine. vsegolish DannyeFormyKollektsiya etc.
și chiar pentru a obține obiectul pe care doriți să transfere controlul la server:
UpravlyaemayaForma (ManagedForm)
RekvizitFormyVZnachenie (FormAttributeToValue)
sintaxa:
RekvizitFormyVZnachenie (<ИмяРеквизита>, <Тип>)
Opțiuni:
Tip: String.
popi Nume formă pe care doriți să convertiți.
Acesta poate fi specificat elemente de recuzită de date de formă (a se vedea. Descrierea parametrului <Объект> Metoda DannyeFormyVZnachenie).
<Тип> (Opțional)
Tip: Tip.
Tipuri de valori obținute din forma necesară (date formular). Dacă acest parametru nu este specificat, este, de asemenea, derivate din formele necesare. În cazul în care elemente de recuzită este un tip compozit și valoare parametru nu este specificat, acesta generează o excepție de execuție.
Valoarea de retur:
Transformă spus recuzită sub forma unui tip de obiect aplicație.