Activities of "hussein"

  • ABP Framework version: v6.0.2
  • UI type: MVC
  • DB provider: EF Core / MongoDB
  • Tiered (MVC) or Identity Server Separated (Angular): no
  • Exception message and stack trace:
  • Steps to reproduce the issue:"

could you guide us on how to integrate SQL Server Reporting Services (SSRS) with Abp? thanks in advance :)

thanks enisn appreciated , could you share with me the EditModal and the code behind the file for the razor page what about my second question plz?

Question
  • ABP Framework version: v6.0.1
  • UI type: MVC
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): no
  • Exception message and stack trace:
  • Steps to reproduce the issue:"

1- I want to customize the user UI, to add a new tab page when editing the user

2- how to prevent a user who has the privilege to manage the users from deleting the Admin user or Sys Role?

hello liangshiwei, the job calls a function in the domain layer, I realized that no filter no tenant no user logged :) so i updated the function to disable all the filters and add the unit of work inside the method 1- I don't know if this is a good practice or not, especially since it may have about 4M records! your advice plz

2- kindly could you guide me on how I use it with application service layer?

i modified my code as the following , maybe it will help the others :)

public async Task CalcInvoicesForAllBatches(bool fromJob=false)
{
    List<Guid> TenantList = new List<Guid>();
    if (fromJob)
    {
        TenantList = (await _tenantRepository.GetListAsync()).Select(x=>x.Id).ToList();
     }
     else
     {
         TenantList.Add( _currentTenant.GetId());
     }
     if (fromJob) using (_dataFilter.Disable<ICompanyFilter>())
     if (fromJob) using (_dataFilter.Disable<IBranchFilter>())
     if (fromJob) using (_dataFilter.Disable<IOfficeFilter>())
     if (fromJob) using (_dataFilter.Disable<IRegistryFilter>())
     //if (fromJob) using (_dataFilter.Disable<IMultiTenant>()) didnt work, it will include host =null
     foreach (var tenant in TenantList)
     using (_currentTenant.Change(tenant))
     using (var uow = _unitOfWorkManager.Begin())
     {
         var querable = await _billingBatchRepository.GetQueryableAsync();
         var query = querable.Where(q => q.EndTime == default && q.StartTime == default
         && q.ExecutionTime <= DateTime.Now
         ).Select(x => x.Id);
         var  list = await AsyncExecuter.ToListAsync(query);
         foreach (var id in list)
         {
         await CalcInvoicesByBatchId(id);
         }
     }
 }

3- how i can localize and translate the background dashboard? 4- is it ok to keep the default workers as the following output? if i want to minimize it how i can configure it to increase running time intervals

Check the docs before asking a question: https://docs.abp.io/en/commercial/latest/ Check the samples, to see the basic tasks: https://docs.abp.io/en/commercial/latest/samples/index The exact solution to your question may have been answered before, please use the search on the homepage.

If you're creating a bug/problem report, please include followings:

  • ABP Framework version: v6.0.1
  • UI type: MVC
  • DB provider: EF Core / MongoDB
  • Tiered (MVC) or Identity Server Separated (Angular): no
  • Exception message and stack trace:
  • Steps to reproduce the issue:"

my worker as the following:

 public interface IBillingWorker : IHangfireBackgroundWorker
 {
 }
 
 [ExposeServices(typeof(IBillingWorker))]
 public class BillingWorker : HangfireBackgroundWorkerBase, IBillingWorker
 {
     private readonly ILogger _logger;
     private readonly IBillingBatchRepository _billingBatchRepository;
     public BillingWorker(ILogger logger, IBillingBatchRepository billingBatchRepository)
     {
         RecurringJobId = nameof(BillingWorker);
         CronExpression = Cron.Minutely();
         _logger = logger;
         _billingBatchRepository = billingBatchRepository;
         }
         
         [UnitOfWork(isTransactional: false)]
         public override async Task DoWorkAsync(CancellationToken cancellationToken = default)
         {
             _logger.LogInformation("start billingWorker..!");
             var querable = await _billingBatchRepository.GetQueryableAsync();
             var query = querable.Where(q = q.EndTime == default && q.StartTime == default
             && q.ExecutionTime <= DateTime.Now
             ).Select(x = x.Id).ToList();
             _logger.LogInformation($"Executed billingWorker..!: return {query.Count}");
             await Task.CompletedTask;
         }
    }

and i registred it as the following:

 public override void OnApplicationInitialization(ApplicationInitializationContext context)
 {
     AsyncHelper.RunSync(async () =
     {
        await context.AddBackgroundWorkerAsync();
     });
}



[DependsOn(typeof(AbpBackgroundJobsModule))]
[DependsOn(typeof(AbpBackgroundJobsHangfireModule))]
[DependsOn(typeof(AbpBackgroundWorkersHangfireModule))]
public class BstUtilityBackgroundServicesModule : AbpModule
{
...
}

once the worker is started it gives the following error:

System.ObjectDisposedException: Cannot access a disposed context instance. A common cause of this error is disposing a context instance that was resolved from dependency injection and then later trying to use the same context instance elsewhere in your application. This may occur if you are calling 'Dispose' on the context instance, or wrapping it in a using statement. If you are using dependency injection, you should let the dependency injection container take care of disposing context instances. Object name: 'BillingDbContext'.

if i use the following code

using (var uow = _unitOfWorkManager.Begin())
{
 var querable = await _billingBatchRepository.GetQueryableAsync();
 var query = querable.Where(q => q.EndTime == default && q.StartTime == default
 && q.ExecutionTime<=DateTime.Now
 ).Select(x => x.Id);
 list = await AsyncExecuter.ToListAsync(query);
}

it keeps returning an empty list!! , but if I call it manually from the appservice , then it will return the data

Note that I BillingDbContext is in another module

i'll appreciate if you can provide a working sample with best practices on how we can use hangfire with ABP ,,,, noting that I read the documents files but had no luck because if I use it in appservice, not in the domain it will give an authorization field even if I use [AllowAnonymous]

If you're creating a bug/problem report, please include the followings:

  • ABP Framework version: v6.0
  • UI type: MVC
  • DB provider: EF Core / sqlserver
  • Tiered (MVC) or Identity Server Separated (Angular): no
  • Exception message and stack trace:
  • Steps to reproduce the issue:"

I follow the link in the community about hiding Tenant Switch from an ABP Framework Login page and it works without selecting the tenant from the login now I have a problem accessing the application from an API call (mobile flutter) , I don't want the end user to select the tenant, i just want to resolve the tenant name by his login id as done in the UI-login page I'll appreciate your help with this case thanks in advance

  1. it is very slow

The blazor wasm will be slow on first load. Do you see this is acceptable performance? I mean it is not only when it load the apps,but you can see when you change the language for example! , also if you close the browser then re-open it , same same! comparing to the same apps with .net core only, the Blazor wasm apps working well did I miss something in the configuration? or if you test it from your side is it the same issue? ,

then after I publish it to IIS, the host works, but the blazor couldn't work after the login page ,

Did you check this document?

https://docs.microsoft.com/en-us/aspnet/core/blazor/host-and-deploy/webassembly?view=aspnetcore-6.0

let me check it

I wish I found something related to Abp framework , we have selected the Abp framework to focus on business development rather than spending time on the architecture and these staff!!!!

Dear Support Teams, Any Feedback ?!

BCheck the docs before asking a question: https://docs.abp.io/en/commercial/latest/ Check the samples, to see the basic tasks: https://docs.abp.io/en/commercial/latest/samples/index The exact solution to your question may have been answered before, please use the search on the homepage.

If you're creating a bug/problem report, please include followings:

  • ABP Framework version: v5.3.2
  • UI type: Blazor
  • DB provider: EF Core
  • Tiered (MVC) or Identity Server Separated (Angular): yes / no
  • Exception message and stack trace:
  • Steps to reproduce the issue:"
  1. Use suite -> create a new solution, Blazor Web Assembly Project with Progressive Web Application ( want to support offline mode) and SQL Server db options
  2. run DbMigrator
  3. run the host project it works with no delay, then the blazor project it took around 20 seconds to load

my issues here are:

  1. it is very slow

  2. then after I publish it to IIS, the host works, but the blazor couldn't work after the login page , could you guide me the details steps on how to configure it correctly, i already followup most of the answers here on the support page and the documentation but I didn't success

hello ABP team, I wish I found comprehensive documentation about API and enough guide to follow best practice steps better than losing time just searching in Github and google :( anyhow i realize that i should do the following steps :

first use the following address baseUrl + "/connect/token" to get token first (don't use log in to return the cookie ) with the client request.bodyFields = { 'username': username, 'password': password, 'Client_Id': 'yourname_App', 'grant_type': 'password', 'client_secret': '1q2w3e*' }; this will return the token if it succeeded step2: send the token in heder with any request : var header = { 'Content-Type': 'application/json', 'Accept': 'application/json', 'Authorization': 'Bearer $token', }; it will return data and post data with no problems

**my question here ** if I want to receive login user details, which URL should I use? "/api/identity/users/by-username/" (user should has privilege to see users rights? ) if i use "/api/account/my-profile" it will return basic info but for example "Extra fields added to the identity not returned"

other question please: for some reason if the user, not login or he should re-login the response status returned 200 = OK !! with the login page, means it should return json data " not authorized" or how i can deal with login page HTML in json as an error?

Showing 21 to 30 of 32 entries
Made with ❤️ on ABP v8.2.0-preview Updated on March 25, 2024, 15:11