Uzun işlemler 1s 8.3. BSP'deki uzun işlemlerin ilerlemesini görüntüleme ve mevcut oturumda bunlarda hata ayıklama. Uzun süren işlemler için arka plan modu

Makale, büyük miktarda veriyle çalışan programcılar ve yöneticiler için tasarlanmıştır. Aynı zamanda, işlemenin kendisinde, işlenen verinin hacmi hakkında bir anlayış vardır ve bunun sonucunda, işlemenin ilerlemesini ve ilerlemesini görüntülemek mümkündür.

BSP'de uzun vadeli operasyonların kullanımına ilişkin genel bir anlayışın olduğu varsayılmaktadır. Aksi takdirde kontrol etmenizi öneririm.

BSP sürüm 2.3 kullanıldı. Bu, önceki sürümlerde çalışmaz; böyle bir yazılım arayüzü yoktur.

Yürütme ilerlemesi

Arka planda uzun işlemler gerçekleştirirken siz (veya kullanıcılar) yalnızca dönen bir daireye bakmak istemiyorsanız, aynı zamanda ne kadar verinin işlendiğini ve halihazırda neyin işlendiğini bilmek istiyorsanız, o zaman BSP'nin bunu sağlayacak bir mekanizması vardır. ilerlemeyi görselleştirmek.

Formda görüntülenen bir komutu işleyen bir prosedür.

Yürütmeyi, uzun süren bir işlemin başlatılmasını başlatan bir prosedüre sunucuya aktarır. Daha sonra uzun operasyonun tamamlanması için bekleyiş başlıyor.

Artık formunuzda bekleme işleyicilerini tanımlamanıza ve görev tanımlayıcılarını hatırlamanıza gerek yok. Arka plan işi bittiğinde çağrılacak uyarının açıklamasını iletmeniz yeterlidir.

Görev 2 saniye içinde tamamlanmazsa, işlemin ilerleyişini ve mevcut eylemin açıklamasını görüntüleyen bir bekleme formu çağrılacaktır.

&OnClient Prosedürü ExecuteProcedureBackground(Command) Uzun Süreli İşlem = ExecuteBackgroundTaskOnServer();

WaitingParameters = LongOperationsClient.WaitingParameters(ThisObject);

// Beklenti Parametreleri durumunun ilerlemesinin görüntülenmesi gerektiğini belirtin OutputExecutionProgress = True;

&OnServer İşlev RunBackgroundTaskOnServer() Parametre Yapısı = Yeni Yapı;

Yürütme Parametreleri = Long-runningOperations.ExecutionParametersInBackground(UniqueIdentifier);

Yürütme Parametreleri.Arka Plan Görevinin Adı = НStr("ru = "Arka plan görevinin adı""); Long-runningOperation = Long-runningOperations.ExecuteInBackground("ModuleName.ExportProcedureName", ParameterStructure, ExecutionParameters); LongOperation'ı döndür; Son Fonksiyon

İlerleme mesajı

Prosedürün kendisinde uzun bir operasyon var "

ModülAdı.Dışa AktarmaProsedürAdı

"İlerlemeyi ve mevcut eylemin açıklamasını raporlamak gerekiyor.

Mesaj verileri ebeveyn oturumu tarafından toplanır ve bekleme formunda görüntülenir. Prosedür ExportProcedureName(ParametersStructure, ResultAddress) Export //... Long-runningOperations.NotifyProgress(End(PercentageComplete, 0), Açıklama);".

//...Prosedür Sonu

Sonucun işlenmesi için prosedür

Bu prosedür uzun bir operasyonun tamamlanmasının ardından başlatılır. Bir işlem hatalarla tamamlandığında bunların işlenmesi mümkündür.

Uzun süren bir işlem başarıyla tamamlanırsa sonuç, "

  1. Sonuç.SonuçAdresi
  2. &OnClient Prosedürü ExecuteProcedureBackgroundExeculated(Sonuç, İlaveParametreler) Dışa Aktar Sonuç = Tanımsızsa Sonra Geri Dön;
  3. ElseIf Result.Status = "Hata" Then GeneralPurposeClientServer.NotifyUser(Result.ErrorDetailView);

Aksi takdirde Result.Status = "Completed" Sonra // sonucu işleyin //ProcessResult(Result.ResultAddress);

endIf; Prosedürün Sonu

  1. Bu form standart BSP koduyla çağrılacaktır: Kullanılabilirlik üzerinde çalışıyoruz Benim düşünceme göre, uzun bir operasyonun tamamlanmasını bekleyen mevcut bekleme penceresi aşağıdaki dezavantajlara sahiptir:
  2. İlerlemenin görsel bir göstergesi yok. Bir göstergenin görüntülenmesi mümkün olmasına rağmen yalnızca metin görüntülenir. Operasyonun tamamlanması için kalan süreye ilişkin bir tahmin yoktur.".

"İptal"e tıklamak arka plan işini iptal etmez, yalnızca formu kapatır.

Ve küçük bir bonus (belki birisinin işine yarayacaktır) - mevcut oturumda uzun süredir devam eden işlemlerde hata ayıklamak için, 1C:Enterprise'ı "Hata Ayıklama Modu" başlatma parametresiyle başlatmanız yeterlidir. Bu kısaca bahsedilmiştir dokümantasyon . Bu durumda arka plan işi başlatılmayacak ve sistem, geçilen işlevi geçerli oturumda başlatacaktır. Bu, hata ayıklamak için çok daha uygundur.

Sürüm PROF sürüm 3.0, teknoloji platformunda geliştirildi 1C: Kurumsal 8.2 ve bir bulut hizmetini kullanarak İnternet üzerinden kullanma yeteneği de dahil olmak üzere, yeteneklerinden tam olarak yararlanır. Bu durumda program başlamaz sabit disk bilgisayar ve sağlayan bir siteden bir tarayıcı aracılığıyla . Programı kullanan kullanıcı 1C: Muhasebe 8 PROFİnternet aracılığıyla bilgilerin tam gizliliği ve güvenliği konusunda garanti alır. Aynı zamanda kullanıcılar 1C: Muhasebe 8 PROF ed. 3.0, programı hem bir bulut hizmeti aracılığıyla hem de yerel olarak kimlik bilgilerini taşıyarak kullanabilir. Ancak, muhasebe ve vergi muhasebesi metodolojisi de dahil olmak üzere programın büyük bir kısmı 2.0 sürümünden kalmıştır.

Daha fazla hizmet seçeneği

  • Bölümden bölüme geçiş, bölüm adlarına ve bilgi simgelerine sahip yer imleri kullanılarak gerçekleştirilir ve bu, gezinmeyi büyük ölçüde kolaylaştırır.
  • Kullanıcı, şirket faaliyetlerinin özelliklerine göre belge formlarının veya referans kitaplarının görünümünü kolayca değiştirebilir:
    • alanların sırasını değiştirin,
    • kullanılmayan yer imlerini kaldırın.
    Bu durumda kullanıcının yaptığı tüm değişiklikler diğer kullanıcılara aktarılabilir.
  • Yakın zamanda oluşturulan ve düzenlenen belgelerin listesini görüntüleyebileceğiniz bir "Geçmiş" düğmesi vardır.
  • Herhangi bir dergiye, dizine veya belgeye erişmek için, aynı bilgi tabanına gerekli haklara sahip başka bir kullanıcının hızlı bir şekilde bulabileceği dahili bir bağlantı alabilirsiniz.
  • Programda, gerektiğinde hızlı erişim sağlayacak her türlü belgeyi, raporu vb. yerleştirebileceğiniz bir “Sık Kullanılanlar” bölümü bulunmaktadır.
  • Program ayrıca bilgi tabanına yalnızca verileri görüntüleme hakkıyla erişme olanağı da sağlar.

Maaş ve personel muhasebesi için yeni işlevsellik

Programın 3.0 versiyonunda 1C: Muhasebe 8 PROFÇalışanın pozisyonu ve maaşını girme prosedürü değiştirildi. Artık bu bilgiler programın 2.0 sürümünde olduğu gibi ayrı belgelere değil, doğrudan kartına giriliyor.

Personel siparişleri de çalışanın kartından oluşturulmaktadır.

Maaş bordrosu, kişisel gelir vergisi ve sigorta primleri otomatik olarak hesaplanır ve tek bir belgede görüntülenir.

Maaş bordrosu muhasebesi de değişti; artık programda işyeri bazında yapılıyor, böylece maaş bordroları departman bazında derlenebiliyor. Aynı zamanda bölüm tarafından maaş ödemeleri de yapılabilmektedir.

Uzun süren işlemler için arka plan modu

Programın 3.0 versiyonunda 1C: Muhasebe 8 PROFçalışmak daha da kolaylaştı. Artık, örneğin bir ayı kapatmak veya bir tür rapor oluşturmak gibi uzun bir işlemin tamamlanmasını beklemeye gerek yok, çünkü bunların hepsi arka planda uygulanıyor, böylece kullanıcı çalışırken çalışmaya devam edebiliyor.

Sonuç olarak, kullanıcının güncelleme yapılandırıcısını kullanarak bağımsız olarak sürüm 3.0'a geçebileceğini belirtmek isterim. Aynı zamanda, bilgi teknolojisi desteğine () abone olan 1C: Accounting 8 PROF programının 2.0 sürümü kullanıcılarına, yapılandırmayı 3.0 sürümüne ücretsiz olarak güncelleme fırsatı verilir.

Makale, büyük miktarda veriyle çalışan programcılar ve yöneticiler için tasarlanmıştır. Aynı zamanda, işlemenin kendisinde, işlenen verinin hacmi hakkında bir anlayış vardır ve bunun sonucunda, işlemenin ilerlemesini ve ilerlemesini görüntülemek mümkündür.

BSP'de uzun vadeli operasyonların kullanımına ilişkin genel bir anlayışın olduğu varsayılmaktadır. Aksi takdirde kontrol etmenizi öneririm.

BSP sürüm 2.3 kullanıldı. Bu, önceki sürümlerde çalışmaz; böyle bir yazılım arayüzü yoktur.

Yürütme ilerlemesi

Arka planda uzun işlemler gerçekleştirirken siz (veya kullanıcılar) yalnızca dönen bir daireye bakmak istemiyorsanız, aynı zamanda ne kadar verinin işlendiğini ve halihazırda neyin işlendiğini bilmek istiyorsanız, o zaman BSP'nin bunu sağlayacak bir mekanizması vardır. ilerlemeyi görselleştirmek.

Formda görüntülenen bir komutu işleyen bir prosedür.

Yürütmeyi, uzun süren bir işlemin başlatılmasını başlatan bir prosedüre sunucuya aktarır. Daha sonra uzun operasyonun tamamlanması için bekleyiş başlıyor.

Artık formunuzda bekleme işleyicilerini tanımlamanıza ve görev tanımlayıcılarını hatırlamanıza gerek yok. Arka plan işi bittiğinde çağrılacak uyarının açıklamasını iletmeniz yeterlidir.

Görev 2 saniye içinde tamamlanmazsa, işlemin ilerleyişini ve mevcut eylemin açıklamasını görüntüleyen bir bekleme formu çağrılacaktır.

&OnClient Prosedürü ExecuteProcedureBackground(Command) Uzun Süreli İşlem = ExecuteBackgroundTaskOnServer();

WaitingParameters = LongOperationsClient.WaitingParameters(ThisObject);

// Beklenti Parametreleri durumunun ilerlemesinin görüntülenmesi gerektiğini belirtin OutputExecutionProgress = True;

&OnServer İşlev RunBackgroundTaskOnServer() Parametre Yapısı = Yeni Yapı;

Yürütme Parametreleri = Long-runningOperations.ExecutionParametersInBackground(UniqueIdentifier);

Yürütme Parametreleri.Arka Plan Görevinin Adı = НStr("ru = "Arka plan görevinin adı""); Long-runningOperation = Long-runningOperations.ExecuteInBackground("ModuleName.ExportProcedureName", ParameterStructure, ExecutionParameters); LongOperation'ı döndür; Son Fonksiyon

İlerleme mesajı

Prosedürün kendisinde uzun bir operasyon var "

ModülAdı.Dışa AktarmaProsedürAdı

"İlerlemeyi ve mevcut eylemin açıklamasını raporlamak gerekiyor.

Mesaj verileri ebeveyn oturumu tarafından toplanır ve bekleme formunda görüntülenir. Prosedür ExportProcedureName(ParametersStructure, ResultAddress) Export //... Long-runningOperations.NotifyProgress(End(PercentageComplete, 0), Açıklama);".

//...Prosedür Sonu

Sonucun işlenmesi için prosedür

Bu prosedür uzun bir operasyonun tamamlanmasının ardından başlatılır. Bir işlem hatalarla tamamlandığında bunların işlenmesi mümkündür.

Uzun süren bir işlem başarıyla tamamlanırsa sonuç, "

  1. Sonuç.SonuçAdresi
  2. &OnClient Prosedürü ExecuteProcedureBackgroundExeculated(Sonuç, İlaveParametreler) Dışa Aktar Sonuç = Tanımsızsa Sonra Geri Dön;
  3. ElseIf Result.Status = "Hata" Then GeneralPurposeClientServer.NotifyUser(Result.ErrorDetailView);

Aksi takdirde Result.Status = "Completed" Sonra // sonucu işleyin //ProcessResult(Result.ResultAddress);

endIf; Prosedürün Sonu

  1. "Uzun SüreliİşlemYeni" formunu, makaleye eklenen işlemden genel yapılandırma formlarına taşıyın.
  2. İlerlemenin görsel bir göstergesi yok. Bir göstergenin görüntülenmesi mümkün olmasına rağmen yalnızca metin görüntülenir. Operasyonun tamamlanması için kalan süreye ilişkin bir tahmin yoktur.".

"İptal"e tıklamak arka plan işini iptal etmez, yalnızca formu kapatır.

Ve küçük bir bonus (belki birisinin işine yarayacaktır) - mevcut oturumda uzun süredir devam eden işlemlerde hata ayıklamak için, 1C:Enterprise'ı "Hata Ayıklama Modu" başlatma parametresiyle başlatmanız yeterlidir. Bu kısaca bahsedilmiştir dokümantasyon . Bu durumda arka plan işi başlatılmayacak ve sistem, geçilen işlevi geçerli oturumda başlatacaktır. Bu, hata ayıklamak için çok daha uygundur.

Makale, büyük miktarda veriyle çalışan programcılar ve yöneticiler için tasarlanmıştır. Aynı zamanda, işlemenin kendisinde, işlenen verinin hacmi hakkında bir anlayış vardır ve bunun sonucunda, işlemenin ilerlemesini ve ilerlemesini görüntülemek mümkündür.

BSP'de uzun vadeli operasyonların kullanımına ilişkin genel bir anlayışın olduğu varsayılmaktadır. Aksi takdirde kontrol etmenizi öneririm.

BSP sürüm 2.3 kullanıldı. Bu, önceki sürümlerde çalışmaz; böyle bir yazılım arayüzü yoktur.

Yürütme ilerlemesi

Arka planda uzun işlemler gerçekleştirirken siz (veya kullanıcılar) yalnızca dönen bir daireye bakmak istemiyorsanız, aynı zamanda ne kadar verinin işlendiğini ve halihazırda neyin işlendiğini bilmek istiyorsanız, o zaman BSP'nin bunu sağlayacak bir mekanizması vardır. ilerlemeyi görselleştirmek.

Formda görüntülenen bir komutu işleyen bir prosedür.

Yürütmeyi, uzun süren bir işlemin başlatılmasını başlatan bir prosedüre sunucuya aktarır. Daha sonra uzun operasyonun tamamlanması için bekleyiş başlıyor.

Artık formunuzda bekleme işleyicilerini tanımlamanıza ve görev tanımlayıcılarını hatırlamanıza gerek yok. Arka plan işi bittiğinde çağrılacak uyarının açıklamasını iletmeniz yeterlidir.

Görev 2 saniye içinde tamamlanmazsa, işlemin ilerleyişini ve mevcut eylemin açıklamasını görüntüleyen bir bekleme formu çağrılacaktır.

&OnClient Prosedürü ExecuteProcedureBackground(Command) Uzun Süreli İşlem = ExecuteBackgroundTaskOnServer();

WaitingParameters = LongOperationsClient.WaitingParameters(ThisObject);

// Beklenti Parametreleri durumunun ilerlemesinin görüntülenmesi gerektiğini belirtin OutputExecutionProgress = True;

&OnServer İşlev RunBackgroundTaskOnServer() Parametre Yapısı = Yeni Yapı;

Yürütme Parametreleri = Long-runningOperations.ExecutionParametersInBackground(UniqueIdentifier);

Yürütme Parametreleri.Arka Plan Görevinin Adı = НStr("ru = "Arka plan görevinin adı""); Long-runningOperation = Long-runningOperations.ExecuteInBackground("ModuleName.ExportProcedureName", ParameterStructure, ExecutionParameters); LongOperation'ı döndür; Son Fonksiyon

İlerleme mesajı

Prosedürün kendisinde uzun bir operasyon var "

ModülAdı.Dışa AktarmaProsedürAdı

"İlerlemeyi ve mevcut eylemin açıklamasını raporlamak gerekiyor.

Mesaj verileri ebeveyn oturumu tarafından toplanır ve bekleme formunda görüntülenir. Prosedür ExportProcedureName(ParametersStructure, ResultAddress) Export //... Long-runningOperations.NotifyProgress(End(PercentageComplete, 0), Açıklama);".

//...Prosedür Sonu

Sonucun işlenmesi için prosedür

Bu prosedür uzun bir operasyonun tamamlanmasının ardından başlatılır. Bir işlem hatalarla tamamlandığında bunların işlenmesi mümkündür.

Uzun süren bir işlem başarıyla tamamlanırsa sonuç, "

  1. Sonuç.SonuçAdresi
  2. &OnClient Prosedürü ExecuteProcedureBackgroundExeculated(Sonuç, İlaveParametreler) Dışa Aktar Sonuç = Tanımsızsa Sonra Geri Dön;
  3. ElseIf Result.Status = "Hata" Then GeneralPurposeClientServer.NotifyUser(Result.ErrorDetailView);

Aksi takdirde Result.Status = "Completed" Sonra // sonucu işleyin //ProcessResult(Result.ResultAddress);

endIf; Prosedürün Sonu

  1. "Uzun SüreliİşlemYeni" formunu, makaleye eklenen işlemden genel yapılandırma formlarına taşıyın.
  2. İlerlemenin görsel bir göstergesi yok. Bir göstergenin görüntülenmesi mümkün olmasına rağmen yalnızca metin görüntülenir. Operasyonun tamamlanması için kalan süreye ilişkin bir tahmin yoktur.".

"İptal"e tıklamak arka plan işini iptal etmez, yalnızca formu kapatır.

Ve küçük bir bonus (belki birisinin işine yarayacaktır) - mevcut oturumda uzun süredir devam eden işlemlerde hata ayıklamak için, 1C:Enterprise'ı "Hata Ayıklama Modu" başlatma parametresiyle başlatmanız yeterlidir. Bu kısaca bahsedilmiştir dokümantasyon . Bu durumda arka plan işi başlatılmayacak ve sistem, geçilen işlevi geçerli oturumda başlatacaktır. Bu, hata ayıklamak için çok daha uygundur.



Yükleniyor...Yükleniyor...