Save operation with transaction