Kullanıcı ayarlarının sıfırlanması 1s 8.3. Yayınlar. Programcı tarafından oluşturulan ayar havuzları

1C Enterprise 8.3'ün önbelleğinin temizlenmesi, programın işlevselliğini geri yükleyen hizmet işlevlerinden biridir. İşlem oldukça popüler, bu nedenle yayın "1C Enterprise 8.3'ün önbelleği nasıl temizlenir?" sorusuna kapsamlı bir yanıt sunuyor.

1C önbelleğini temizlemek, platformdaki birçok yanlışlığa karşı çok etkili bir çözümdür; örneğin: 1C öğelerinin formları "go", rapor bir hatayla oluşturulur, " " penceresi görünür ve diğerleri. Bu nedenle, bu teknik teknik hem 1C yöneticisi hem de 1C programlarının sıradan kullanıcısı için her zaman "el altında" olmalıdır. Bunu uygulamak için bugün aşağıdaki konuları tartışmayı öneriyorum:

1C Enterprise 8.3'ün yanlış çalışmasıyla ilgili olarak şirketin teknik desteğini veya 1C ortaklarını arayarak, önerilen çözümlerden biri (ile birlikte) 1C önbelleğini temizlemek olacaktır. “1C önbellek” in ne olduğunu ve neden gerekli olduğunu bilmiyorsanız size kısaca anlatacağım.

Önbellek 1C Kurumsal 8.3 bilgisayarda 1C Enterprise 8.3 platformunun servis bilgilerini içeren dosyaları depoladığı bir alandır.

1C önbelleğinde hangi hizmet bilgileri saklanır?

1C Enterprise'ın çalışması sırasında, 1C yapılandırmalarıyla çalışırken kullanıcı tarafından belirtilen pencerelerin konumu, yazı tipi ayarları, renkler, seçimler ve çok daha fazlası gibi hizmet bilgileri dizilerinin ve gerekli öğelerin kaydedilmesine ihtiyaç vardır. 1C Enterprise'ın çalışmasını hızlandırmak, iş kullanıcısı için hizmet verileri vb.

Buna göre, 1C önbelleğindeki bilgiler yanlış formattaysa 1C Enterprise 8.3 yapılandırmaları düzgün çalışmayacaktır. Yanlış veriler görünebilir, örneğin, 1C önbelleğe veri yazarken elektrik kesintisi olduğunda (bu durumda verilerin bir kısmı yazılmayacaktır), fiziksel eskimesi nedeniyle sabit sürücünün hatalı alanları nedeniyle, ve diğer birçok nedenden dolayı.

1C Enterprise 8.3 önbellek klasörlerine nasıl gidilir?

1C Enterprise 8.3 önbelleği, kullanıcı profilinde aşağıdaki klasörlerde saklanır:

  • %userprofile%\AppData\Roaming\1C\1Cv82
  • %userprofile%\AppData\Roaming\1C\1Cv8
  • %userprofile%\AppData\Local\1C\1cv82
  • %userprofile%\AppData\Local\1C\1cv8

Devamlı %Kullanıcı profili%- Windows işletim sistemindeki kullanıcı profilinin yolunu içerir, böylece Explorer'da 1C önbelleğinin adresini yukarıda belirtildiği gibi girebilirsiniz, Windows işletim sistemi sizi anlayacak ve istediğiniz klasöre gidecektir.

Bazı klasörler farklı platform versiyonlarında olduğundan mevcut olmayabilir. Önbellek içeren klasörleri bulmanın en kesin yolu " …\1C\", önbellekler " ile başlayan klasörlerde saklanacak \1cv8«.

Profile kendiniz gitmek için Windows Gezgini'nde şu yolu izleyin:

C:\Kullanıcılar\KullanıcıAdı

Buradan “AppData” klasörüne gitmeniz gerekiyor.

DİKKAT!“AppData” klasörü gizlidir, kullanıcı profilinden bu klasöre gitmek için “ \Uygulama verisi\» manuel olarak seçin ve Enter tuşuna basın.

Yukarıdaki açıklamaya uygun olarak "AppData" klasöründen 1C Enterprise önbelleğine sahip klasörlere gidin.

1C Enterprise 8.3 önbelleğini kendiniz nasıl temizleyebilirsiniz?

Önbellek, hizmet dosyalarının 1C Enterprise 8.3 önbellek depolama klasörlerinden doğrudan silinmesiyle temizlenir.

Onlar. klasörlerde gerekli " \1Cv8" Ve " \1Cv82» tüm dosyaları silin.

Bu işlem, 1C Enterprise 8.3 yapılandırmalarının çalışmasına herhangi bir zarar vermeyecektir; platform, 1C yapılandırmalarının bir sonraki başlatılışında 1C önbelleğinin gerekli tüm hizmet dosyalarını yeniden oluşturacaktır.

1C önbelleklerini silme prosedürünü kolaylaştırmak için bir toplu iş dosyası oluşturabilirsiniz .bat.

1C Enterprise 8.3'ün önbelleği bir toplu iş dosyası.bat aracılığıyla nasıl temizlenir?

*.bat dosyası, içinde yazılı olan Windows işletim sistemi komutlarını sırayla yürütür. Kaldırma prosedürünü kolaylaştırmak için şu komutu kullanın: üçüncü(dizini sil)

Önbelleği temizle 1C Enterprise 8.3

1C nesnesine "Sistem Ayarları Depolama Alanı" 1C'nin "dahili önbelleği" adını veriyorum; sistem ayarlarına erişmeye yönelik standart bir ayarlar depolama yöneticisi nesnesi içerir.
Yapılandırmayı değiştirirken bazen harici 1C önbelleğini temizlemek yeterli olmayabilir, ör. Kullanıcı ayarlarını depolamak için 1C platformu tarafından sabit sürücüde oluşturulan dosyalar ve ayrıca 1C'nin "dahili önbelleğini" de temizlemeniz gerekir, sunulan geliştirmenin kaldırabileceği şey budur!

Tanım

Tedavi "Sistem ayarları depolaması" hem normal hem de yönetilen formlarda herhangi bir konfigürasyona yerleştirme açısından tamamen özerk bir çözümdür! Ve 8.2'den başlayan platform sürümü önemli değil! Kod senkronize veya modal çağrıları kullanmaz!

İşleme, veri türü yöntemleriyle çalışmayı gösterir:

Standart Depolama Ayarları Yöneticisi

StandartAyarlarStorageManager
Yöntemler:
Seçme
Yük
Açıklamayı Al
GetList
Kaydetmek
Silmek
Açıklamayı Ayarla
Tanım:
Bu tür nesneler, standart depolamada saklanan ayarlara erişmek için tasarlanmıştır.
Rapor seçeneklerinin ayarlarına erişmek için bu türden bir nesnenin genel bağlam özelliği ReportOptionsStorage'dan alınması gerekir.
Özel rapor ayarlarına erişmek için bu türden bir nesnenin genel bağlam özelliği CustomReportSettingsStorage'dan alınması gerekir.
Form verilerine ilişkin kullanıcı ayarlarına erişmek için, bu türden bir nesnenin genel bağlam özelliği FormDataSettingsStorage'dan alınması gerekir.
Genel ayarlara erişmek için bu türden bir nesnenin genel bağlam özelliği GeneralSettings Storage'dan alınması gerekir.
Sistem ayarlarına erişmek için bu türden bir nesnenin genel bağlam özelliği SystemSettings Storage'dan alınması gerekir.
Dinamik listelere ilişkin kullanıcı ayarlarına erişmek için bu türden bir nesnenin DynamicListsUserSettings Storage genel bağlam özelliğinden alınması gerekir.
Kullanılabilirlik:
Sunucu, kalın istemci, harici bağlantı.
Ayrıca bakınız:
Genel bağlam, Sistem Ayarları Depolama özelliği

Tüm işlevler ekran görüntülerinde gösterilmiştir.

Dikkat! Kullanıcı adı IB kullanıcı adı ile eşleşmelidir! Aksi takdirde "Kullanıcı ayarlarını al" düğmesi düzgün çalışmayacak ve bazı işlevler çalışmayacaktır. Ancak kullanıcıları yeniden adlandırmak sorun yaratıyorsa yalnızca "Tüm kullanıcıların ayarlarını al" düğmesini kullanın!

Not: Eğer materyal size yardımcı olduysa, bir yıldız vererek yazara teşekkür edin!

1C'de periyodik olarak kullanıcı ayarlarını temizlemeniz gerektiği bir sır değil!

Çünkü Programın güncellenmesi veya yeni işlevselliğin sonlandırılması sürecinde belgenin veya raporun biçimi değişebilir ve eski kayıtlı ayarlar yeni arayüzde doğru şekilde görüntülenmeyebilir. Bunu düzeltmek için eski ayarları temizlemeniz ve yenileriyle kaydetmeniz gerekir.

Belge yazdırma formlarına ilişkin ayarlar da burada saklanır; belge 1C'den yazdırılmazsa veya çarpık yazdırılırsa, o zaman 1C ayarlarını temizlemeniz gerekiyor.

Kullanıcı ayarlarının temizlenmesi işlemi 2 modda çalışır:

1. Bir kullanıcı seçin - TÜM kullanıcı ayarlarını temizle'ye tıklayın - seçilen kullanıcı için tüm eski ayarlar silinecek ve program, geliştiricilerin tasarladığı gibi çalışacak ve görüntülenecektir. Bu yöntem, 1C'de form görüntüleme sorunlarından kurtulmanıza yardımcı olur.

2. Seçmeli olarak - Tüm kullanıcıların ayarlarını al'a tıklayın - silmek istediklerinize ilişkin kutuları işaretleyin ve İşaretli olanları sil'e tıklayın. Bu yöntem yalnızca sorunlu veya gereksiz olduğunu düşündüğünüz ayarları silmenize olanak tanır.

İstemci-sunucu işletim modunda, tüm veriler DBMS'lerden biri tarafından yönetilen bir veritabanında saklanır: MS SQL, Postgree SQL, IBM DB2 veya Oracle. Hesap bilgileri iki tabloda saklanır: "v8users" ve "Params".

Bazı durumlarda bilgi tabanına giriş yapabilmek için kullanıcı hesaplarının sıfırlanması gerekebilir. Bu yazıda bu görevi tamamlamak için gerekli adımlara bakacağız. Örnekte MS SQL Server 2012 Express'i kullanacağız. SQL sunucusundaki veritabanı adı "Exp"tir.

Hesaplarınızı sıfırlamak için iki adımı uygulamanız gerekir:

  1. "v8users" tablosunu bırakın.
  2. "Params" tablosundan, ilk "DosyaAdı" sütununda "users.usr" değerini içeren bir kaydı silin.

SQL komutları

Bu nedenle bilgi tabanı kullanıcılarını sıfırlamak ve geri yüklemek için SQL komutlarına ihtiyacımız var. Kullanıcı listesini sıfırlamak için komutlarla başlayalım. Aşağıdakileri yapmamız gerekiyor:

  1. "v8users" tablosunu silmek yerine "h8users" olarak yeniden adlandırın. Bu, gelecekte tabloyu geri yüklemenize olanak sağlayacaktır. " sp_rename "v8users" , "h8kullanıcıları"Burada"sp_rename" komutu hakkında daha fazla bilgi edinebilirsiniz.
  2. Ayrıca “Params” tablosundaki girişi de silmeyeceğiz, sadece “FileName” sütunundaki değeri “users.usr”dan “husers.usr”a değiştireceğiz. Bu durumda platform, bilgi tabanı kullanıcı parametrelerini bulamayacaktır. "UPDATE" komutu hakkında daha fazla bilgiyi burada bulabilirsiniz. " GÜNCELLEME Paramleri DosyaAdı = "husers.usr" değerini ayarlayın. Burada DosyaAdı = "users.usr""

Bu adımları tamamladıktan sonra kimlik doğrulama adımını atlayarak bilgi veritabanına kolayca girebiliriz. Şimdi kullanıcı listesini geri yükleme komutlarını düşünmeye geçelim. Toplamda üç takım olacak:

  1. Oturum açma platformu eksikse tabloyu yeniden oluşturduğundan "v8users" tablosunun silinmesi. Veritabanından bir tabloyu silmek için kullanılan SQL komutu böyle görünür. " DROP TABLE v8users " Çalışma zamanı hatası oluşmaması için bu tablonun yokluğunun sağlanması gerekir. "DROP TABLE" komutu hakkında daha fazla bilgi edinin bağlantıya bakın.
  2. Orijinal tablo adı olan "v8users"ı geri yükleyin. " sp_rename "h8users" , "v8kullanıcıları"" Sözdizimi önceki örneğe benzer, yalnızca tablo adları değiştirildi.
  3. Orijinal parametre kaydını döndürüyoruz. " GÜNCELLEME Parametreleri DosyaAdı = "users.usr" değerini ayarlayın. Burada DosyaAdı = "husers.usr"" Gerekirse, platform oluşturduysa yeni kullanıcı ayarları girişini silmeniz gerekir.

Yukarıdaki komutları kullanarak bilgi tabanı kullanıcılarının listesini sıfırlayabilir/geri yükleyebiliriz.

Süreci otomatikleştiriyoruz

Yukarıdaki SQL komutlarını kullanmanın bir örneği olarak, .NET platformunda hesapları sıfırlama ve geri yükleme işlemini otomatikleştiren küçük bir program oluşturalım.

Yapabilirsiniz bağlantıdan indir. Proje kaynak dosyalarını buradan indirebilirsiniz. Prensip olarak benzer bir program yazmak zor değildir. Önemli bir nokta, veritabanını değiştirmeye yönelik tüm eylemlerin dikkate alınan bir işlemde gerçekleştirilmesi gerektiğidir.

Hesapları sıfırlamak/geri yüklemek için SQL sunucusu adresini, veritabanı adını ve SQL sunucusu kimlik doğrulama bilgilerini girmeniz gerekir.

Böylece sorun çözülmüş olur ve oluşturulan program sayesinde hesapların sıfırlanması işlemi sorun olmaktan çıkacaktır.

“Ayar Depolama” yapılandırma nesnesinin amacı adından da anlaşılmaktadır - çeşitli kullanıcı ayarlarını saklamak. Bu nesnenin uygulama kapsamı geniştir; ne kadar ciddi olursa olsun, herhangi bir konfigürasyonda bazı kullanıcı ayarlarının saklanması gerekir.

Programcıların rahatlığı için, her konfigürasyonda çeşitli standart ayar depoları vardır; buna ek olarak, ihtiyaç duyulan sayıda ek ayar deposu oluşturmak da mümkündür.

Öncelikle 8.2 sürümünden itibaren herhangi bir 1C konfigürasyonunda mevcut olan standart ayar depolarına bakalım.

Standart ayarlar depoları

Dolayısıyla, varsayılan olarak yapılandırma aşağıdaki ayar depolarını içerir:

  • Rapor Seçenekleri Depolama - rapor seçeneklerinin ayarlarına erişmek için.
  • Özel Rapor Ayarlarının Saklanması - özel rapor ayarlarına erişim için.
  • Form DataSettings Depolama - form verilerine ilişkin kullanıcı ayarlarına erişmek için.
  • Genel Ayarlar Depolama - genel ayarlara erişmek için.
  • SystemSettings Depolama - sistem ayarlarına erişmek için.
  • Dinamik Listelerin Kullanıcı Ayarlarının Saklanması - dinamik listelerin kullanıcı ayarlarına erişmek için.

Bu mağazaların her birine küresel bağlamın bir özelliği olarak erişilebilir.

Programcı, kullanıcı, nesne ve ayarın kendisi bağlamında çeşitli ayarları kaydederek standart depolamayı kendi ihtiyaçları için kullanabilir.

Ayar havuzlarıyla (hem standart hem de programcı tarafından eklenenler) çalışmak için aşağıdaki yöntemler kullanılır.

Kaydetme ve alma ayarları:

GeneralSettings Storage.Save(ObjectName,SettingsName,SettingsValue,SettingsAçıklama,KullanıcıAdı); SettingsValue = GeneralSettings Storage.Load(ObjectName, SettingsName, SettingsDescription, UserName);

Gereksiz/gereksiz ayarların kaldırılması:

GeneralSettings Storage.Delete(NesneAdı,AyarAdı,KullanıcıAdı);

Ayarların bir listesini alma:

SettingsValueList = GeneralSettings Storage.GetList(ObjectName, UserName);

“ObjectName”, “SettingsName” ve “UserName” parametreleri string türünde olmalıdır.

Veritabanında tüm ayarlar ayrı bir tabloda saklanır.

Programcı tarafından oluşturulan ayar havuzları

Şimdi programcı tarafından oluşturulan ayar depolarından bahsedelim. Genel olarak programcının yeni bir ayar deposu oluşturma isteği hiçbir şekilde sınırlı değildir, ancak genellikle aşağıdaki nedenlerden dolayı ayrı ayar depoları oluşturulur:

  • ayarları veritabanları arasında taşımak gereklidir;
  • ayarları kaydederken referans kontrolü gereklidir;
  • 1C ayarlarının özel bir yapısı gereklidir.

Ayar depoları ilgili konfigürasyon bölümüne eklenir.

Programcı tarafından oluşturulan ayar depolarının önemli bir özelliği, değerlerin (Save() ve Load()) yazılması ve alınması için yöntemlerin manuel olarak uygulanması gereğidir. Bu yöntemlerde, programcının yerleşik dili kullanarak ayarları kaydetmeyi (bilgi kayıtlarında, dosyalarda, dizinlerde vb.) ve yüklemeyi tanımlaması gerekir.

Aksi takdirde, oluşturulan depoyla çalışma prensipleri, standart ayar depolarıyla çalışmaktan neredeyse hiç farklı değildir.

Oluşturulan depoya şu şekilde erişilebilir:

Ayarlar Storage.StorageName.Load();

Ek olarak, oluşturulan depolar, çeşitli konfigürasyon nesnelerinde ve konfigürasyonun kendisinde standart olanların yerini alabilir.

Yönetilen formların iki özelliği vardır:

  • Verilerin otomatik kaydedilmesi - “Kullan” değeri seçilirse, veriler otomatik olarak form verileri ayarlarının standart depolama alanına kaydedilecektir;
  • Verileri ayarlarda kaydetme - "Listeyi kullan" değeri seçilirse, form ayrıntıları penceresinde hangi form ayrıntılarının kaydedilmesi gerektiğini belirleyebileceğiniz "Kaydetme" sütunu görünecek ve ayrıca Bu veriler için ayarların saklanması.

Hepsi bu, umarım bu makale size yardımcı olmuştur.